home *** CD-ROM | disk | FTP | other *** search
/ The Unsorted BBS Collection / thegreatunsorted.tar / thegreatunsorted / texts / txtfiles_misc / 4dos3.msg < prev    next >
Text File  |  1992-04-29  |  330KB  |  9,338 lines

  1.  
  2. ------------------------------------------------------------------------
  3.  
  4. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  5.  
  6.  BBS: ASTRIX          Conference: 4DOS            Imported:  1/21/1992
  7.   To: JIM LYNCH                       Num: 10795      Date:  1/18/1992
  8. From: DENNIS MCCUNNEY                  Re: 0          Time:  4:19 am
  9. Subj: PUSHD AND MORE ALIASES!        Prvt: N          Read: N
  10.  
  11. JL│   back    =dirs > h:\stack.tmp^*if NOT %#filesize[h:\stack.tmp]=0 back1
  12. JL│   back1   =cdd %#select[h:\stack.tmp,2,40,15,79,■ Destination ■]
  13. JL│
  14. JL│ I tried putting it all in one alias, but for some reason, the
  15. JL│ %#SELECT would be evaluated before the IF.
  16.  
  17.     The following variant works for me (all on one line, of course):
  18.  
  19. dirs >d:\stack.tmp
  20. iff NOT %@filesize[d:\stack.tmp]=0 then
  21.     pushd %@select[d:\stack.tmp,1,40,15,79,■ Destination ■]
  22. endiff
  23.  
  24. I have it assigned to Ctrl-PgUp as a key alias.
  25.  
  26. ---
  27.  ■ KMail 2.91a -
  28.  
  29. PCRelay:RUNNINGB -> #3 RelayNet (tm)
  30.                                                                         
  31.  
  32. ------------------------------------------------------------------------
  33.  
  34. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  35.  
  36.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  1/24/1992
  37.   To: ALL                             Num: 925        Date:  1/22/1992
  38. From: MARK SCARBOROUGH                 Re:            Time: 11:08 am
  39. Subj: 4Dos tips-n-tricks             Prvt: N          Read: N
  40.  
  41. Hellooo Everybody.
  42.      Here's a little trick I came up with last week that you might find
  43. handy; I sure do.  This is probably documented somewhere, but I searched
  44. through the doc file (lug, lug    ;-}  ) and didn't find it anywhere.
  45.  
  46. Aren't Keystroke Aliases _great_!  I love 'em.  They are one of my (many)
  47. favorite new features of 4.0.  My fingers don't get nearly so tired now!
  48. But don't you hate it when you've begun to type a command and then decide
  49. to do something you have programmed to a keystroke alias and you end up
  50. with an "Unknown command" error.  Since that was as clear as mud, I'll
  51. give an example.  Suppose you want to delete some files, so you type "del".
  52. Then you decide to check on those filename _one_more_time_ so you hit
  53. ALT-D to get your wide, colored directory listing to come up.  But NOOO;
  54. you ended up with "del*dir/4p" and the appropriate error message.
  55. Wouldn't it be great if your alias could erase the line before adding
  56. the command?!?  Well now you can...
  57.  
  58. Anyway here's my little trick:  when creating Keystroke Aliases, you
  59. know how to put a "RETURN" at the end (with ^X^Xr), but did you know
  60. that you can also embed an "ESCAPE" in the alias?  To do it, just put
  61.            ^X^Xe
  62. at the beginning of the alias.  This "ESCAPE" character
  63. will erase the line and allow the alias to be entered on a fresh,
  64. clean command line!  (Granted, others have probably already discovered
  65. this but I thought it was neat enough to share.)
  66.  
  67.                                       .\\ark Scarborough
  68.  
  69. --- Blue Wave/Opus v2.01 [NR]
  70.  * Origin: The ECS BBS - Austin, TX (512)328-6923 * HST/DS * (1:382/87.0)
  71.  
  72. ------------------------------------------------------------------------
  73.  
  74. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  75.  
  76.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  1/24/1992
  77.   To: MICK SPICE                      Num: 847        Date:  1/17/1992
  78. From: MAURICE VAN DER WERF             Re:            Time:  6:49 pm
  79. Subj: a 4DOS challenge ??            Prvt: N          Read: N
  80.  
  81. Hello Mick,
  82.  
  83. On Wednesday, January 8, you wrote to Everybody:
  84.  
  85.  MS> So, can anyone point me to a way of running the TIMER and getting the
  86.  MS> result into the 4DOS.LOG file ?????
  87.  
  88. How's this:
  89.  
  90.    timer on
  91.    REM do your stuff...
  92.    timer|input %%logtext
  93.    log "%logtext"
  94.    unset logtext
  95.  
  96. Regards, Maurice.
  97.  
  98. --- GEcho/beta
  99.  * Origin: There's no future in time travel (2:281/515.4)
  100.  
  101. ------------------------------------------------------------------------
  102.  
  103. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  104.  
  105.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  1/24/1992
  106.   To: MICK SPICE                      Num: 862        Date:  1/18/1992
  107. From: FURLAN PRIMUS                    Re:            Time:  4:43 pm
  108. Subj: a 4DOS challenge ??            Prvt: N          Read: N
  109.  
  110. languaging on <08 Jan 92 at 19:43> Mick Spice (2:440/6@fidonet) asserted:
  111.  
  112.  MS> I know there are some smart 4DOS users out there, because this
  113.  MS> echo seems to flow over with Hints & Tips.
  114.  
  115.  MS> So, can anyone point me to a way of running the TIMER and getting
  116.  MS> the result into the 4DOS.LOG file ?????
  117.  
  118. a little redirection will do the trick:
  119.  
  120. _ _ _ O_/_ _C_U_T_ _H_E_R_E_ _ _ _ _ _ _
  121.       O \
  122.  
  123. log /w 4dos.log
  124. timer
  125. :: do stuff here
  126. timer >> 4dos.log
  127. log off
  128.  
  129. _ _ _ O_/_ _C_U_T_ _H_E_R_E_ _ _ _ _ _ _
  130.       O \
  131.  
  132. have fun!
  133.  
  134. fl
  135. --- Msged/sq
  136.  * Origin: Dyslexia rules KO. (1:141/590@fidonet)
  137. 
  138. ------------------------------------------------------------------------
  139.  
  140. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  141.  
  142.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  1/24/1992
  143.   To: RICHARD HOLLER                  Num: 861        Date:  1/18/1992
  144. From: WILLIAM HUGHES                   Re:            Time:  4:36 pm
  145. Subj: Batch File help wanted         Prvt: N          Read: N
  146.  
  147. RH>Is that possible?  Here's what I have so far for ZIP and ARJ files:
  148. RH>   if (%1) == () goto end
  149.   >   Echo ArcFileType is '%@ext[%1]'
  150.   >   if "%@ext[%1]" == "zip" goto ZIP
  151.   >   if "%@ext[%1]" == "arj" goto ARJ
  152.   >   goto end
  153. RH>   :ZIP
  154.   >   Echo Processing ZIPfile
  155.   >   for %a in (%1) do pkzip -k -z %a < e:\arcs\comment.txt
  156.   >   goto end
  157. RH>   :ARJ
  158.   >   Echo Processing ARJfile
  159.   >   for %a in (%1) do arj f -s1 -ze:\arcs\comment.txt %a
  160.   >   goto end
  161.  
  162. Hmmm...
  163.  
  164. if (%1)==() QUIT
  165. for %a in (%1) (
  166. iff %@UPPER[%@EXT[%a]]==ZIP then
  167.      Echo Processing ZIPfile
  168.      pkzip -k -z %a < e:\arcs\comment.txt
  169. elseiff %@UPPER[%@EXT[%a]]==ARJ then
  170.      Echo Processing ARJfile
  171.      arj f -s1 -ze:\arcs\comment.txt %a
  172. elseiff %@UPPER[%@EXT[%a]]==LZH then
  173.      Echo Processing LZHfile
  174.      lha [whatever]
  175. elseiff %@UPPER[%@EXT[%a]]==ZOO then
  176.      Echo Processing ZOOfile
  177.      zoo [whatever]
  178. else echo UNKNOWN FILETYPE ( %@UPPER%@EXT[%a] ) FOUND
  179. endiff )
  180.  
  181. I've tested the above (different commands replaceing pkzip, arj, etc)
  182. and it seems to work; even accepts wildcards
  183. ---
  184.  * SLMR 2.0 * 4DOS or not 4DOS? Damn silly question, if you ask me!
  185.  
  186. --- MsgToss 1.9
  187.  * Origin: NUL  (512)615-NUL1 HST/V32b, 615-NUL2, 615-NUL3 1.2
  188. Gigs(1:387/255)
  189.  
  190. ------------------------------------------------------------------------
  191.  
  192. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  193.  
  194.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  1/24/1992
  195.   To: MARK WATKINS                    Num: 898        Date:  1/18/1992
  196. From: TOBIAS POLZIN                    Re:            Time:  1:11 pm
  197. Subj: Holey Horseshoes - a neat      Prvt: N          Read: N
  198.  
  199. MW>      How about....
  200.  
  201. MW> alias EDNAME `set newname=%1^eset newname^ren %1 %newname>nul^unset
  202. MW> newname`
  203.  
  204. Not bad, but look at this:
  205.  
  206. alias ren `iff %#=1 then^for %%f in (%1) do ...
  207.   ...( set newname=%f^eset newname^*ren %f ...
  208.   ...%newname >& )^unset newname^else^*ren %&
  209.  
  210. It can also smartly handle "REN *.*", EDNAME can't!
  211.  
  212.     Ciao
  213.         Tobias
  214.  
  215. ---
  216.  * Origin: for dos i have four-dos four (2:245/60.15)
  217.  
  218. ------------------------------------------------------------------------
  219.  
  220. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  221.  
  222.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  1/24/1992
  223.   To: STEVE DAVIS                     Num: 883        Date:  1/19/1992
  224. From: HUGO LANDSMAN                    Re:            Time:  8:33 pm
  225. Subj: To delete or not to delet      Prvt: N          Read: N
  226.  
  227. Howdy Steve!
  228.  
  229. On <12 Jan 92  10:09> Steve Davis wrote to Henk Simmelink 'bout To delete or
  230. not to delete:
  231.  
  232.  SD> blah blah blah
  233.  
  234. Aren't we polite..
  235.  
  236.  SD> I came up with this:
  237.  
  238.  SD> pushd
  239.  SD> cd \point\fd
  240.  SD> if exist *.log goto quit
  241.  SD> ECHO NO FD.LOG
  242.  SD> exit
  243.  SD> :quit
  244.  
  245.  SD> if %@FILESIZE[FD.log,b] gt 10000 GOTO DOJOB
  246.  
  247.  SD> ECHO `FD.LOG < 10K - NO ACTION TAKEN`
  248.  SD> GOTO NOMORE
  249.  
  250.  SD> :DOJOB
  251.  SD> list fd.log
  252.  SD> copy nulfile.zzz fd.log > NUL
  253.  SD> ECHO `FD.LOG > 10K - MADE INTO NUL FILE`
  254.  
  255.  SD> :NOMORE
  256.  SD> popd
  257.  
  258. Yikes!  Much too complicated, with all those gotos...  Here, have another
  259. one:
  260.  
  261.      cd \point\fd
  262.      iff not exist fd.log then
  263.           echo No FD.LOG
  264.      elseiff %@filesize[fd.log,K] lt 10 then
  265.           echo FD.LOG `<` 10K - fine
  266.      else
  267.           list fd.log
  268.           >!fd.log
  269.           echo FD.LOG `>`= 10K - reset
  270.      endiff
  271.      cd -
  272.  
  273. Greetings,
  274.            Hugo
  275. --- XAP 0.11a
  276.  * Origin: Very long origin line enabled by XRS 4.99 Wide Beta (2:283/406.5)
  277.  
  278. ------------------------------------------------------------------------
  279.  
  280. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  281.  
  282.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  1/24/1992
  283.   To: BOB CAMPBELL                    Num: 870        Date:  1/19/1992
  284. From: DARRYL GREGORASH                 Re:            Time:  3:31 pm
  285. Subj: Weeknumber Batch               Prvt: N          Read: N
  286.  
  287.  > 01-01-92 is in Week Number 1
  288.  > 01-04-92 is in Week Number 1
  289.  > 01-05-92 is in Week Number 2
  290.  > 01-07-92 is in Week Number 1  <---  I can't explain this
  291.  > 01-10-92 is in Week Number 2
  292.  > 01-13-92 is in Week Number 3
  293.  > 01-17-92 is in Week Number 3
  294.  
  295. Here is what I just tested:
  296.  
  297. WEEKNR.BTM; called with one parameter, the date in mm-dd-yy format that you
  298. wish to check.
  299.  
  300. Example: weeknr 12-25-99
  301.  
  302. +++++++++++++++++ cut here ++++++++++++++
  303. set DOW=%@eval[(%@date[%1] + 2) %% 7]
  304.  
  305. set DOWJAN1=%@eval[(%@date[01-01-%@SubStr[%1,1,-2]] + 2) %% 7]
  306.  
  307. set DOY=%@Eval[ 1 + %@Date[%1] - %@Date[01-01-%@SubStr[%1,1,-2]] ]
  308.  
  309. set WEEKNR=%@Int[%@eval[(%DOY - 1) / 7]]
  310.  
  311. rem Handle special cases.
  312. IF %DOWJAN1 le 3 set WEEKNR=%@Eval[1+%WEEKNR]
  313. IF %DOW lt %DOWJAN1 set WEEKNR=%@Eval[1+%WEEKNR]
  314. rem     ^^ LE or LT??
  315. IF %WEEKNR == 0 set WEEKNR=53
  316.  
  317. UNSET DOW DOWJAN1 DOY
  318. ++++++++++++++++++++ cut here ++++++++++++++++++++
  319.  
  320. This returns all values correctly for 1992, from Jan 01 through Jan 16.  If I
  321. change that LT to a LE, then Jan 01, and every Wednesday thereafter, (Jan
  322. 01/92 being on a Wed) return values one greater than they should, ie.
  323.  
  324.             using LT    using LE
  325. Jan 01/92    1              2
  326.     02       1              1
  327. ...
  328.     07       2              2
  329.     08       2              3
  330.     09       2              2
  331. ...
  332.  
  333. I similarly checked for 1993 (Jan 01 is a Friday), and it works correctly
  334. using LT, but is right out to lunch using LE; using _LE_, week numbers for a
  335. Friday are one _less_ than they should be -- Jan 01 is week 1, 02 is week 53
  336. [of the previous year], and so on.
  337.  
  338. ---
  339.  * Origin: if not %@eval[2+2] eq 4 echo !@#@#$^& (1:140/86)
  340.  
  341. ------------------------------------------------------------------------
  342.  
  343. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  344.  
  345.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  1/29/1992
  346.   To: HANS OESTE                      Num: 1023       Date:  1/27/1992
  347. From: JAY ELKES                        Re:            Time:  5:23 am
  348. Subj: 4dos                           Prvt: N          Read: N
  349.  
  350. WH> people that extoll the virtues of 4DOS, could write a number of factual
  351. WH> screenfuls on the differances between the two operating systems and why
  352. WH> that makes it better and easier to use than ms-dos.  Perhap even write
  353. WH> an essay or some such thing, that could be passed to the other BBS's
  354. WH> for informational purposes.  This could be your part in educating us
  355. WH> novices; 'sell' the product to us.
  356.  
  357. Okay -- do with this what you like
  358.  
  359.                            The Scoop on 4DOS
  360.                               by Jay Elkes
  361.  
  362. 4DOS is a replacement for the DOS command processor command.com. It does not
  363. replace MSDOS itself any more than it would replace DR DOS for which it can
  364. also be used. If you work from the DOS Shell, or from a Windows environment,
  365. 4DOS will do little or nothing for you. If you are working at the DOS command
  366. line, especially with batch files, 4DOS has a lot to offer.
  367.  
  368. The features I use most are history and logging. The history feature lets me
  369. talk back through previously issied commands, edit them, and issue them
  370. again. Even if I were a perfect typist (and I'm not) this feature would be
  371. useful when I want to do the same thing in multiple directories. The logging
  372. feature writes my commands, and any note I care to log, to a file. I do this
  373. more to learn what stupid thing I've done than anything else.
  374.  
  375. There is a 4DOS command for anything that DOS has to offer, frequently with
  376. additional features that may or may not be useful to you. The DIR command
  377. offers a variety of formats, some of which can be used as input to a pipe
  378. with no extraneous data. thre DEL command allows you to delete several series
  379. of files in one command.
  380.  
  381. 4DOS also offers a collection of commands not offered by DOS. Three I use a
  382. lot are MOVE, SELECT, and GLOBAL. MOVE allows me to copy a file from one
  383. location to another and delete it at its point of origin. If I'm putting a
  384. disk file on a floppy that I don't want on my hard disk, I use MOVE. SELECT
  385. is used in conjunction with another command such as DEL or MOVE and a
  386. wildcard string of file names. Files matching the wildcard criteria are shown
  387. on a list which allows me to mark the ones I'm interested in. Once I've
  388. selected the file(s) of interest, the DEL or MOVe (or whatever) is executed
  389. for each selected file. The GLOBAL command also modifies other commands, in
  390. its case applying a command to each subdirectory from the current point down.
  391.  
  392. Not all 4DOS commands are ideal. 4DOS has a LIST command which is perfectly
  393. functional, but I prefer the LIST program by Vern Buerg for that purpose. In
  394. that case, I can use the 4DOS ALIAS command to use the external version
  395. instead of the internal one. If you're running the same setup I am, you mught
  396. want to use an ALIAS to define the name EDIT to your favorite editor so LIST
  397. can find it. ALIASes are short commands kept in memory which can be accessed
  398. faster than any batch file and don't take up as much room on dik as an
  399. equivalent set of BAT files. Aliases can be stored on disk as a single file
  400. so you don't retype them from one session to the next.
  401.  
  402. 4DOS BTM files can replace BAT files in many cases. A BAT file gets read and
  403. executed line by line. 4DOS reads a BTM file once and executes it directly --
  404. making it much faster than a BAT file if loops are involved. BTM files also
  405. offer a more powerful set of commands for those of you who are seriously into
  406. BAT files.
  407.  
  408. Since ALIASes take up memory, you may think 4DOS costs memory. In fact, 4DOS
  409. has a very small portion that runs inside 640K, moving the rest of it to high
  410. memory. As a consequence, my machine with 4DOS and a bunch of aliases
  411. actually has more memory available for programs than it did under DOS.
  412.  
  413. The NORTON utilities NDOS package is a repackaged (with permission) version
  414. of 4DOS version 3. The original author, JP Software, has since improved the
  415. product to version 4.0 but (so far at least) only under the 4DOS name.
  416.  
  417. Even with the commercialization of NDOS, 4DOS is a shareware product you can
  418. pick up from many BBS systems. If you have collected a lot of little command
  419. line utilities to make your life easier, you'll find many of them included in
  420. 4DOS.
  421.  
  422. Copyright 1992 by Jay G. Elkes. Permission to reprint for nonprofit use is
  423. hereby granted.
  424.  
  425.  * SLMR 2.1a * My reality check just bounced.
  426.  
  427.  
  428. --- Squish v1.00
  429.  * Origin: K-Line BBS (614)855-2958 1:226/40  (1:226/40)
  430.  
  431. ------------------------------------------------------------------------
  432.  
  433. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  434.  
  435.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  1/30/1992
  436.   To: ELVIS HARGROVE                  Num: 1032       Date:  1/26/1992
  437. From: DAVID POWERS                     Re:            Time:  9:58 am
  438. Subj: Why won't 4Dos run? :)         Prvt: N          Read: N
  439.  
  440. Hi Elvis,
  441.  
  442.  > 4Dos, in its infinite wisdom will NOT run if infected
  443.  > by a virus.  Specifically, the Jerusalem virus causes
  444.  > 4DOS.COM (EXE?) to cease to function.
  445.  
  446. Well, there you go. :)
  447.  
  448.  > Could you suggest a sample .BTM which would perform
  449.  > the UNlz/scanv function and direct the filenames of
  450.  > infected files to a VIRLST.TXT file?
  451.  
  452. I hope no one minds this.  Somebody complained that not enough batch files
  453. were posted here, though.  And I do about as much errorlevel checking as I do
  454. with my toaster; if it isn't working, say so. :)
  455.  
  456.  ::Wolfram Umlauf wrote this first.
  457.  goto start
  458.  
  459.  :ARC
  460.  setret pkunpak
  461.  :ZIP
  462.  pkunzip
  463.  :LZH
  464.  setret lha x
  465.  
  466.  :WORK
  467.  set arc=%@upper[%arc]
  468.  echo Working on %arc...
  469.  set name=%@name[%arc]
  470.  iff isdir %name then
  471.   echo   Directory name (%@full[%name]) already exists; not unpacking %arc.
  472.   return
  473.  endiff
  474.  md %name
  475.  set name=%@full[%name]
  476.  echo   Moving files to %name.
  477.  move/q %arc %name
  478.  cd %name\
  479.  iff "%@ext[%arc]" ne "%ext" then
  480.   ::if the last file processed has the same extension, use
  481.   ::the same decompression method.
  482.   set ext=%@ext[%arc]
  483.   gosub %ext
  484.  endiff
  485.  echo   Unpacking files.
  486.  %arccmd %arc>&nul
  487.  iff %? ne 0 then
  488.   echo * Error unpacking %arc. *
  489.  elseiff %vscan. ne no. then
  490.   echo   Checking for viruses.
  491.   scan *.*/nomem/bell/report %name\%@name[%arc].vir>&nul
  492.   iff %? ne 0 then echo * Viruses found!  Report in %name. *
  493.   else del/q %name\%@name[%arc].vir
  494.   endiff
  495.  endiff
  496.  cd ..
  497.  return
  498.  
  499.  :SWITCHES
  500.  ::if you or anyone else can think of a better way to check
  501.  ::for this, I'd appreciate it.  I think this is pretty slow.
  502.  set switches=%@substr[%&,%@index[%&,/]]
  503.  if %@index[%switches,/?] ne -1 goto help
  504.  if %@index[%switches,/ns] ne -1 set vscan=no
  505.  if %@index[%switches,/*] ne -1 set arc=/*
  506.  set switches=
  507.  return
  508.  
  509.  :SELECT
  510.  iff not exist %arcs then
  511.   echo Sorry, no archives that I know are here.  I only know these formats:
  512.   echo  %@upper[%arcs]
  513.  else
  514.   select set work on=[%arcs]
  515.   if "%[work on]"="" echo No files selected.
  516.   for %arc in (%[work on]) gosub work
  517.  endiff
  518.  return
  519.  
  520.  :START
  521.  setlocal
  522.  iff %_alias lt 25 .or. %_env lt 100 then
  523.   echo Sorry, not enough alias (lt 25 bytes) or env (lt 100 bytes) space.
  524.   quit
  525.  endiff
  526.  ::define what extensions are okay
  527.  set arcs=*.zip;*.lzh;*.arc
  528.  if %@index["%&",/] ne -1 gosub switches
  529.  alias setret `set arccmd=%bin\%&^return`
  530.  ::if there was a filename in %1 (not a switch), use that.
  531.  if "%@substr[%1,0,1]" ne "/" set arc=%1
  532.  iff "%arc"="/*" then    ;the /* switch was used
  533.   (for %arc in (%arcs) gosub work) >&>nul
  534.  elseiff "%arc"="" then gosub select  ;no parms entered
  535.  elseiff %@index[%arc,?] ne %@index[%arc,*] then
  536.   ::note that this doesn't check for extended wildcards.
  537. echo Sorry, no wildcards.  Try just typing %@upper[%0].
  538. elseiff not exist %arc then
  539. echo "%arc" isn't the right name.
  540. elseiff %@index[%arcs,.%@substr[%arc,2,-3]]=-1 then
  541. echo I don't know what archiver to use for %@upper[%arc].
  542. else gosub work
  543. endiff
  544. endlocal
  545. echo:^echo Done.
  546. quit
  547.  
  548.  :HELP
  549.  echo This is %@upper[%0].
  550.  echo Syntax:  %@upper[%0] [filename] [ [/ns] [/*] | [/?] ]
  551.  text
  552.  
  553. It unpacks archives and puts them with their files in their own
  554. dir.  You can include a single filename to work on (no wildcards),
  555. or no name to select files to unpack.
  556.  
  557.  endtext
  558.  echo %@upper[%0] supports %@upper[%arcs] formats.
  559.  text
  560.  
  561. Supported switches:
  562.  
  563.   /?    gets you this
  564.   /ns   skips the virus scan of each unpacked archive.
  565.   /*    unpacks all archives in current dir.
  566.  endtext
  567.  quit
  568.  
  569.  >      Whereas SCANV  UNzips the target file and scans
  570.  > it.  We tried to TEE the output of SCAN.EXE but so far
  571.  > have not made it work.
  572.  
  573. There's a switch for Scan, I think it's ... hmm, /REPORT. That should do what
  574. you want.
  575.  
  576.  > NOW, how do you make it SET its output to a %VAR?
  577.  
  578. If I understand you, there are a couple of ways I know. One is to do this:
  579.  
  580.  select set var=[*.*]
  581.  
  582. But you have to have a lot of environment space if you're going to pick a lot
  583. of files, right?  Another would be some complicated redirection stuff, but
  584. it'd be a pain, I think.
  585.  
  586. Hmm.  This is a long message which I sincerely hope will not be chopped too
  587. badly.
  588.  
  589. ---
  590.  * Origin: Ooooh yeah ... Edges ... uh-huh ... SF, CA ... yeah. (1:125/54)
  591.  
  592. ------------------------------------------------------------------------
  593.  
  594. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  595.  
  596.  BBS: ASTRIX          Conference: 4DOS            Imported:  1/31/1992
  597.   To: SERGE DELBONO                   Num: 11066      Date:  1/28/1992
  598. From: GREG VAIDMAN                     Re: 0          Time: 12:02 am
  599. Subj: 4DOS ALIASES                   Prvt: N          Read: N
  600.  
  601. on 1/27/92 serge delbono writes:
  602.  
  603. SD├╢I use a better alias :
  604. SD├╢alias ..*...    `cd %0`
  605. SD├╢(Thank's to the guy that suggested that in this conference).
  606.  
  607.         that's great!  i didn't know you could access the alias name in
  608.         the alias itself!  maybe try:
  609.  
  610.             alias ..*...=`%0\`
  611.  
  612.         that saves a whopping 2 bytes of alias space!  i use about 4k
  613.         worth of aliases.
  614.  
  615.         some of my favorites:
  616.  
  617. ═══════════════════════════════════════════════════════════════════════
  618.  
  619. CD=iff "%1"=="" then^acd *^else^cdd %1
  620. MD=for %z in (%&) do acd md %z
  621. RD=for %z in (%&) do acd rd %z
  622. IN=pushd^cd %1^%2&^popd
  623. RESC*AN=acd /qcreate cdefgh
  624. GO=if not isdir %1 md %1^cdd %1
  625. ;   these aliases make the acd command do all your directory changing.
  626. ;   acd is a great freeware/pd program better than lcd/ncd.
  627.  
  628.  
  629. EXE=in %1. dir *.exe;*.com;*.bat;*.btm
  630. ;   get a list of all executables in a given directory
  631.  
  632.  
  633. DA=dir/p a:%&
  634. DB=dir/p b:%&
  635. ;   convenient for quick dir of floppies
  636.  
  637.  
  638. CVT=rearj %&^describe %#name[%1].* "%@descript[%1]"
  639. ;   after converting zip -> arj or vice versa, this copies the
  640. ;   description from the original to the new file
  641.  
  642.  
  643. @F4={ESC}q c:\config.sys c:\autoexec.bat{CTRL-X}r
  644. ;   F4 key edits config.sys and autoexec.bat
  645.  
  646.  
  647. CHKDSK=ndd c: d: e: f: g: h: /q
  648. ;   use norton disk doctor for chkdsk
  649.  
  650.  
  651. MAN=iff x%1==x then^shez u:\doc.zip^else^unzip -c u:\doc %1*.*|list/s
  652. ;   view the doc file for a given file, or list of all docs
  653. ;   where you can pick which to view
  654.  
  655.  
  656. SUB=c:\bin\subst
  657. SUB?=echo %#truename[%@substr[%1,0,1]:]
  658. UNSUB=sub %1/d
  659. ;   makes using subst a lot easier
  660.  
  661.  
  662. AFAKE=mark fake^if exist j:\nul subst j:/d^subst j: .^assign a=j^a:
  663. AREAL=pushd c:\^assign^release fake^subst j:/d^popd
  664. ;   these allows me to quickly create a fake "A:" drive on a hard drive
  665. ;   subdirectory, to speed up some install programs...
  666.  
  667.  
  668. ?=echo %@eval[%&]
  669. ;   command line calculator; who uses the default ? command anyway?
  670.  
  671.  
  672. MORE=list/s
  673. ;   makes everything piped to more pipe to buerg's list instead
  674.  
  675.  
  676. DEL=*del/q
  677. ;   an absolute necessity; too slow otherwise
  678.  
  679.  
  680. ═══════════════════════════════════════════════════════════════════════
  681.  
  682.  
  683. i've got more if anyone likes what they see...
  684.  
  685.                                                 greg vaidman
  686. ---
  687.  ■ OLX 2.1 ■ if (quackslike(X)==DUCK) return DUCK;
  688.  
  689. PCRelay:DATABASE -> #1251 RelayNet (tm)
  690.                                                                                  
  691.  
  692. ------------------------------------------------------------------------
  693.  
  694. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  695.  
  696.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  1/31/1992
  697.   To: GEORGE WORLEY                   Num: 1129       Date:  1/28/1992
  698. From: KEN HARWELL                      Re:            Time:  2:58 pm
  699. Subj: 4DOS                           Prvt: N          Read: N
  700.  
  701. George,
  702.  
  703.  GW> I all the time change my aliases on the fly and would like 
  704.  GW> to save them to 
  705.  GW> my ALIAS  file so if there is a power failure or I power down they are 
  706.  GW> restored when I get power restored to the system.
  707.  
  708. -------------------
  709.  
  710. edalias
  711.         q c:\4dos\alias.cfg
  712.         if exist c:\4dos\alias.bak del /q c:\4dos\alias.bak
  713.         newalias
  714.  
  715. newalias
  716.         unalias *
  717.         alias /r c:\4dos\alias.cfg
  718.  
  719. ------------------------------
  720.  
  721. Here is my solution to your problem. I don't think I can take full credit for
  722. it cause I think I "stole it" from somebody else but then, that is what the
  723. 4DOS echo is all about. :-)
  724.  
  725. Because of the limitation of message editors, etc. I broke the aliases
  726. EDALIAS and NEWALIAS down into individual statements. In my C:\4DOS\ALIAS.CFG
  727. they are all on one line separated with the COMMAND SEPARATOR (was that
  728. redundant!).
  729.  
  730. Q is QEdit, my text editor of choice. When I make aliases on the fly I put
  731. them in my ALIAS.CFG. If they are "keepers" I sort them. If they are
  732. temporary, I let them stay at the top of the file until I am finished with
  733. them and then delete them. I have QEdit set to make .BAK files. If your text
  734. editor doesn't produce .BAK files, the second command of EDALIAS is
  735. unnecessary.
  736.  
  737. There is more than one solution to your problem and this is only one. There
  738. is probably a more "eloquent" solution, but then I've rarely been accused of
  739. eloquence myself! :-)
  740.  
  741. See ya
  742.  
  743.   KH
  744.  
  745. --- Msg V4.5
  746.  * Origin: Oblio's POINTless Forest   (1:116/4000.1)
  747.  
  748. ------------------------------------------------------------------------
  749.  
  750. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  751.  
  752.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  1/31/1992
  753.   To: ALL                             Num: 1121       Date:  1/28/1992
  754. From: BONNO BLOKSMA                    Re:            Time:  1:39 am
  755. Subj: Pheeew, close call             Prvt: N          Read: N
  756.  
  757. Hello All!
  758.  
  759. Ever tried to shutdown your computer in one window while you were still
  760. running programs in other windows? I tried just now.
  761.  
  762. Well I caught the sucker just in time but this makes you wonder isn't there
  763. any way to detect if I'm still running DesqView?
  764.  
  765. Well guess what? 4DOS to the rescue! So now my shutdown bachtfile looks like
  766. this:
  767.  
  768. =-=-=-=-=-=-=
  769. @Echo Off
  770. IF %_DV == 0 Goto ShutDown
  771. Echo You're still running DesqView egghead!!!
  772. Goto Exit
  773.  
  774. :ShutDown
  775. F:\NU50\Image C: D: E: F:
  776. C:\HYPERDSK\HyperDk D
  777. Echo Finished, Turn the sucker off.
  778. Pause > NUL
  779.  
  780. rem In case I forgot something and want to continue
  781. C:\HYPERDSK\HyperDk E
  782.  
  783. :Exit
  784. =-=-=-=-=-=-=
  785.  
  786. Maybe a wise suggestion if you're running DV too.
  787.  
  788. See ya on/off-line
  789. |]      |]
  790. |_]onno |_]loksma
  791.  
  792. --- GEcho/beta
  793.  * Origin: Another point of Equinox the turning point. (2:283/3.8)
  794.  
  795. ------------------------------------------------------------------------
  796.  
  797. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  798.  
  799.  BBS: ASTRIX          Conference: 4DOS            Imported:  2/02/1992
  800.   To: ALL                             Num: 11110      Date:  1/31/1992
  801. From: JIM LYNCH                        Re: 0          Time:  2:12 am
  802. Subj: MENU'S USING .BTM              Prvt: N          Read: N
  803.  
  804. Somebody here gave me the idea of making a menu using
  805. (AT)%select[], and the result was such and improvment over what I
  806. had, I thought I share my results. This is a two level menu.
  807.  
  808.  
  809. @echo off
  810. setlocal
  811.  
  812. :MAIN
  813. cd c:\4dos4
  814. cls
  815. REM stuff here to draw a background omitted...
  816.  
  817. set choice=%#word[0,%@select[menu0.dat,8,32,20,47, * Main Menu *]]
  818. if %choice!==! goto end
  819. goto %choice
  820.  
  821. : -------------------submenus start here
  822. :COMMUNICATIONS
  823. set choice=%#word[0,%@select[menu1.dat,3,25,20,55,* Communications *]]
  824. if %choice!==! goto MAIN
  825. goto %choice
  826.  
  827. :APPLICATIONS
  828. set choice=%#word[0,%@select[menu2.dat,3,25,20,55,* Applications *]]
  829. if %choice!==! goto MAIN
  830. goto %choice
  831.  
  832. :SYSTEM
  833. set choice=%#word[0,%@select[menu3.dat,6,25,20,55,* System Utils *]]
  834. if %choice!==! goto MAIN
  835. goto %choice
  836.  
  837. : -------- communications choices start here
  838. :PROCOMM
  839. cdd f:\ud
  840. keystack 13 @32
  841. C:\pcplus\pcplus
  842. goto MAIN
  843.  
  844. :COMPUSERVE
  845. cdd d:\ato
  846. ato
  847. goto MAIN
  848.  
  849. :ECHOMAIL
  850. msged
  851. goto MAIN
  852.  
  853. etc.
  854.  
  855. To make this go, there is a text file for each menu (menu0.dat,
  856. etc) that is just a list of the prompts, (which are also the GOTO
  857. labels) like this:
  858.  
  859. Communications
  860. Applications
  861. System Utils
  862.  
  863.  
  864. That's all, folks....
  865. ---
  866.  
  867. ■ MegaMail 2.1ß #0:
  868.  
  869. PCRelay:DCINFO -> #16 MetroLink (tm) International Network
  870. 4.10              DC Info Exchange MetroLink International Hub
  871.      
  872. work
  873. 4.10              DC Info Exchange MetroLink International Hub
  874.      
  875.  
  876. ------------------------------------------------------------------------
  877.  
  878. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  879.  
  880.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/02/1992
  881.   To: RUDI PITTMAN                    Num: 1146       Date:  1/30/1992
  882. From: FURLAN PRIMUS                    Re:            Time:  7:19 am
  883. Subj: bat file                       Prvt: N          Read: N
  884.  
  885. languaging on <27 Jan 92 at 14:12> Rudi Pittman (1:3613/10.9@fidonet)
  886. asserted:
  887.  
  888.  RP> Im trying to write a bat file which will loop 15 times and 
  889.  RP> increment a variable to be checked...can't seem to get the 
  890.  RP> variables to work correctly using the %@eval statement..for 
  891.  RP> example:
  892.  
  893.  RP> Set %choice = 1
  894.  RP> echo %@eval[%choice +2]
  895.  RP> returns a 2 no matter what is in %choice....am I going about this 
  896.  RP> the wrong way?  
  897.  
  898. i use two aliases here to increment and decrement variables easily:
  899.  
  900. DEC=set %1=%@eval[%[%1]-1]
  901.  
  902. INC=set %1=%@eval[%[%1]+1]
  903.  
  904. (i got these from the PROMPT Solution #3, they were written by Ariel
  905. Frailich)
  906.  
  907. then the above could be written:
  908.  
  909. inc choice
  910.  
  911.  
  912. fl
  913. --- Msged/sq
  914.  * Origin: Things work better if you plug them in. (1:141/590@fidonet)
  915.  
  916. ------------------------------------------------------------------------
  917.  
  918. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  919.  
  920.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/02/1992
  921.   To: RUDI PITTMAN                    Num: 1171       Date:  1/30/1992
  922. From: TROY PRATHER                     Re:            Time: 10:49 am
  923. Subj: bat file                       Prvt: N          Read: N
  924.  
  925. ===========================================================================
  926.  BBS: Desktop Micro's BBS
  927. Date: 01-27-92 (14:12)             Number: 181
  928. From: RUDI PITTMAN                 Refer#: NONE
  929.   To: ALL                           Recvd: NO
  930. Subj: bat file                       Conf: (31) INT'L-4DOS
  931.    ------------------------------------------------------------------------
  932. RP->Im trying to write a bat file which will loop 15 times and increment a
  933. RP->variable to be checked...can't seem to get the variables to work
  934. correctly
  935. RP->using the %@eval statement..for example:
  936.  
  937. RP->Set %choice = 1
  938. RP->echo %@eval[%choice +2]
  939. RP->returns a 2 no matter what is in %choice....am I going about this the
  940. wrong
  941. RP->way?
  942.  
  943.  
  944.      I think this will work.  I have not tried it to make sure.  If it
  945. doesn't it is pretty close.  You need to initialize the counter outside
  946. the loop.  It appears that you had the counter inside the loop and it
  947. was being reinitalized eveytime the loop started over.  That is way you
  948. got a two everytime.
  949.  
  950.  
  951. Set %choice = 1
  952. :loop
  953. do something here
  954. echo %@eval[%choice +2]
  955. if %choice gt 15 then goto loopend
  956. goto loop
  957. :loopend
  958.  
  959.  
  960.                                           Troy Prather
  961.  
  962.  * SLMR 2.1a * Crime wouldn't pay, if the government ran it.
  963.  
  964.  
  965. --- WM v2.00/91-0020
  966.  * Origin: Desktop Micro's BBS - (309) 662-2017 (1:232/302)
  967.  
  968. ------------------------------------------------------------------------
  969.  
  970. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  971.  
  972.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/02/1992
  973.   To: MARK RUYS                       Num: 1179       Date:  1/18/1992
  974. From: BILL HAYLES                      Re:            Time:  5:34 pm
  975. Subj: No Drdos Join                  Prvt: N          Read: N
  976.  
  977.    Mark,
  978.    On 13th January you asked about using JOIN with DRDOS6 and 4DOS.  I   
  979. quote from the 4DOS APPNOTES.DOC:
  980.  
  981.     >        DR-DOS 5.0's design makes the ASSIGN, JOIN, MORE, and SUBST
  982.     >         commands internal (in MS-DOS / PC-DOS they are external). 
  983.     >         4DOS supports all MS-DOS internal commands, but does not have
  984.     >         internal support for ASSIGN, JOIN, MORE, and SUBST.  To ac-
  985.     >         cess these DR-DOS internal commands when using 4DOS as the
  986.     >         command processor, you must set up aliases which run DR-DOS's
  987.     >         COMMAND.COM.  The following 4DOS aliases accomplish this
  988.     >         (adjust these if COMMAND.COM is not in C:\):
  989.  
  990.     >               alias assign `c:\command /c assign %&`
  991.     >               alias join `c:\command /c join %&`
  992.     >               alias more `c:\command /c more %&`
  993.     >               alias subst `c:\command /c subst %&`
  994.  
  995.    The same applies to DRDOS 6.    I have put all these into my ALIASES.TXT
  996. and use JOIN etc. with
  997.    no problems.
  998.  
  999.    Hope this helps.
  1000.  
  1001.    Bill
  1002.  
  1003.  
  1004.  
  1005.  
  1006.                   ----------------------------------------
  1007.  
  1008. TNT XL/v6.0α
  1009.  
  1010.  
  1011. --- HALCYON 5.00B
  1012.  * Origin: Fox's Den BBS (0689) 827085 (2:440/28)
  1013.  
  1014. ------------------------------------------------------------------------
  1015.  
  1016. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  1017.  
  1018.  BBS: ASTRIX          Conference: 4DOS            Imported:  2/04/1992
  1019.   To: STEF EVAIN                      Num: 11168      Date:  2/02/1992
  1020. From: DENNIS MCCUNNEY                  Re: 0          Time:  3:27 pm
  1021. Subj: 4dos & batch                   Prvt: N          Read: N
  1022.  
  1023. SE│         I would like to write using 4DOS
  1024. SE│         A batch that rename a file with only extension that change
  1025. SE│         with day of the month :
  1026. SE│
  1027. SE│         TOTO.ZIP  -> TOTO.030
  1028. SE│
  1029. SE│         I suppose this is easy with Ecval fonction but i have not found
  1030. SE│         true solution
  1031.  
  1032.     You don't need %@eval for this:
  1033.  
  1034.     : ren_day.btm
  1035.     @echo off
  1036.     rename %1 %@name[%1].0%@substr[%_DATE,6,2]
  1037.     : ren_day.btm ends
  1038.  
  1039.     (This can be an alias, if you like.)
  1040.  
  1041.     What this does is use a pair of variable functions and a built-in
  1042. variable.  The %@name function returns the filename portion of the file
  1043. named in %1.  The %@substr function extracts the day of the month from
  1044. the current date, which 4DOS stores as a built-in variable - %_DATE, and
  1045. tacks it onto the filename as the new extension, prepending a 0 to it to
  1046. pad it to three chars.  The exact use of %@substr to grab the
  1047. information from %_DATE will vary depending on the date format in use.
  1048. For U.S. style dates, it would be %@substr[%_DATE,3,2] above.
  1049.  
  1050.     If format independance is a concern, you could test the value
  1051. returned by %_CODEPAGE to determine whether alternate language support
  1052. has been installed, and change the exact parms passed to %@substr
  1053. accordingly.
  1054.  
  1055. ---
  1056.  ■ KMail 2.91c -
  1057.  
  1058. PCRelay:RUNNINGB -> #3 RelayNet (tm)
  1059.                                                                                                   
  1060. PCRelay:DCINFO -> #16 MetroLink (tm) International Network
  1061. 4.10              DC Info Exchange MetroLink International Hub
  1062.      
  1063.  
  1064. ------------------------------------------------------------------------
  1065.  
  1066. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  1067.  
  1068.  BBS: ASTRIX          Conference: 4DOS            Imported:  2/04/1992
  1069.   To: JIM LYNCH                       Num: 11154      Date:  2/01/1992
  1070. From: DANNY O'LEARY                    Re: 0          Time: 11:55 am
  1071. Subj: 4DOS 4.01 ALIASES <HELP>       Prvt: N          Read: N
  1072.  
  1073. │JL> What is %0 ? What does this alias do? Why did you name the alias       │
  1074. │JL> ..*... ? Seems hard to type to me?                                     │
  1075. ╘═══════════════════════════════════════════════════════════════════════════╛
  1076.  
  1077. When I first started 4DOSing, I saw this alias and couldn't figure
  1078. it out for the life of me. Let's take a look...
  1079.  
  1080. alias ..*..... `cd %0\%1`   (this is the version I use)
  1081.  
  1082. OK. Remember that the * is an alias truncator. That means that you
  1083. need only type the first two dots (..) to call the alias. 4DOS will
  1084. also recognize ... or .... or ..... as the same alias, just as long
  1085. as the first two dots are there.
  1086.  
  1087. The %0 refers to the name of the alias, batch file, or whatever.
  1088. So, assuming you didn't give a second argument (no %1), the alias
  1089. .. would expand as "cd .."  taking you one directory up. The more
  1090. dots you add, the more directories you go up. For example if you
  1091. are in the directory
  1092.  
  1093. c:\elvis\is\dead
  1094.  
  1095. the following commands would put you in the corresponding
  1096. directories:
  1097.  
  1098. ..    ->   c:\elvis\is
  1099. ...   ->   c:\elvis
  1100.  
  1101. Adding the \%1 allows you to go "up and over" like this:
  1102.  
  1103. ... lives   ->   c:\elvis\lives
  1104.  
  1105. Pretty darn nifty, eh? Hope this was helpful.
  1106.  
  1107. DannO
  1108.  
  1109. p.s. - This conference is generally one of the most helpful, but I
  1110. had to figure this one out on my own. In doing so, I found that the
  1111. easiest way to figure out aliases is to play with them. Good luck
  1112. in the future.
  1113. ---
  1114.  ■ MegaMail 2.10 #0:
  1115.  
  1116. PCRelay:LIGHTNIN -> #851 RelayNet (tm)
  1117.                                                
  1118.  
  1119. ------------------------------------------------------------------------
  1120.  
  1121. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  1122.  
  1123.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/04/1992
  1124.   To: ALL                             Num: 1213       Date:  2/02/1992
  1125. From: LEE JACKSON                      Re:            Time: 12:45 am
  1126. Subj: 4MUL.BTM                       Prvt: N          Read: N
  1127.  
  1128. For any of you who have tried the 4CAT diskette cataloguer, you might have
  1129. noticed it will only catalogue one disk at a time.  I've written a short
  1130. .BTM that will allow multiple disks to be catalogued, with a pause in
  1131. between, followed by a display of the freespace on your diskettes.  Feel
  1132. free to use, comment, or trash as desired.
  1133.  
  1134. 4MUL.BTM
  1135. -------------start shredding here---------------
  1136.  
  1137.  @echo off
  1138.  echo Insert disk and press any key when ready.
  1139.  pause >nul
  1140.  :catalog
  1141.  4cat b:
  1142.  inkey /K"YN" Catalog another disk?  %%answer
  1143.  iff "%answer"=="Y" .or. "%answer"=="y" then
  1144.    echo Insert disk and press any key when ready.
  1145.    pause >nul
  1146.    goto catalog
  1147.  endiff
  1148.  cls
  1149.  4cat /free
  1150.  pause
  1151.  cls
  1152.  echo Cataloguing complete.
  1153.  
  1154. --------end shred mode----------------------
  1155.  
  1156. Just wanted to share a file that works well with a very solid, basic
  1157. cataloguer (especially for a 1.0 release!).  Enjoy.
  1158.  
  1159.         -Lee
  1160.  
  1161.  
  1162.  
  1163. --- Msged/sq
  1164.  * Origin: The Middle of Nowhere * Kyle, TX  (1:382/87.4)
  1165.  
  1166. ------------------------------------------------------------------------
  1167.  
  1168. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  1169.  
  1170.  BBS: ASTRIX          Conference: 4DOS            Imported:  2/04/1992
  1171.   To: ALL                             Num: 11175      Date:  2/03/1992
  1172. From: DAVE LEMIRE                      Re: 11129      Time:  6:58 am
  1173. Subj: MENU'S USING .BTM              Prvt: N          Read: N
  1174.  
  1175. JL>Somebody here gave me the idea of making a menu using
  1176.   >(AT)%select[], and the result was such and improvment over what I
  1177.   >had, I thought I share my results. This is a two level menu.
  1178.  
  1179. Jim Lynch posted a nice applications menu .BTM with the above
  1180. message.  Here's mine for picking compressed files out of a .ZIP
  1181. for viewing with LIST:
  1182.  
  1183. echo off
  1184. fv e:\utils\docfiles.zip  | fg -s -w ":??:??  ?" | sort >files
  1185. set VVV=%(AT)select[files, 2, 40, 20, 55, View?]
  1186. iff "%vvv!" ne "!" then
  1187.     (pku -c e:\utils\docfiles.zip %(AT)substr[ %vvv, 0, 15] | LIST /s
  1188.     unset vvv )
  1189. endiff
  1190. del /q files
  1191. quit
  1192.  
  1193.  
  1194. DOCFILES.ZIP is an archive of the .DOC files you need to refer to
  1195. once in a blue moon.
  1196.  
  1197. I find this one pretty useful.
  1198.  
  1199. Dave Lemire
  1200. ---
  1201.  ■ SLMR 2.1a ■ Hello, I am part number │║ ║│║│█│║▌│║▌││
  1202.  ■ KMail 2.91c The DC Information Exchange
  1203.                                                              
  1204. PCRelay:DCINFO -> #16 MetroLink (tm) International Network
  1205. 4.10              DC Info Exchange MetroLink International Hub
  1206.      
  1207.  
  1208. ------------------------------------------------------------------------
  1209.  
  1210. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  1211.  
  1212.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/05/1992
  1213.   To: MORRIS TURPIN                   Num: 1244       Date:  2/02/1992
  1214. From: PAUL THORNETT                    Re:            Time: 10:50 pm
  1215. Subj: %@exec[  ]                     Prvt: N          Read: N
  1216.  
  1217. MT>prompt `%@exec[readhist]$h$e[s$e[1;1f$e[1;37;41m$e[K Level=$z
  1218. %@dosmem[b]
  1219. MT> $D     Time: $t$h$h$h$e[1;%@eval[%_columns-%@len[%_cwd]-6]fPath:
  1220. MT>$p$e[u$e[0;1;33;44m$n$g$e[0;37;44m`
  1221.  
  1222. MT>Thanks to your tip I now have a complete history list, including those
  1223. MT>commands typed while shelled out, but do you have any ideas why the "0" is
  1224. MT>being returned?
  1225.  
  1226. I too went through the same learning loop you refer to, also getting the
  1227. unwanted 0, and reaching the same solution you did. But then I went further,
  1228. deciding to sort any old history file, and remove duplicate commands, then
  1229. append the current session's history to the end of the previous history. here
  1230. it is (on one line, of course):
  1231.  
  1232. ALIAS:  readhist=iff exist k:\histfile then
  1233.         ^ sort<k:\histfile>k:\histfile
  1234.         ^ history>>k:\histfile
  1235.         ^ d:\4dos\compact k:\histfile>nul
  1236.         ^ history/f
  1237.         ^ history/r k:\histfile
  1238.         ^ del k:\histsave>&nul
  1239.         ^ ren k:\histfile histsave/q
  1240.         ^ endiff
  1241.  
  1242. PROMPT: prompt %%@exec[readhist]~b$p$g
  1243.  
  1244. DOS COMMANDS CARRIED OUT ONCE AT START OF EACH SESSION
  1245.         if exist k:\histfile erase k:\histsave>&nul
  1246.         if exist k:\histsave rename k:\histsave histfile /q
  1247.  
  1248. The RENAME HISTFILE HISTSAVE in the alias READHIST is done so that, if I have
  1249. to bounce out of the current session with Ctrl-Alt-Del (using Desqview),
  1250. I haven't lost all my previous history (K: is a RAM drive).
  1251. Although this looks like a lot of processing, I really don't notice it (on a
  1252. 486/25).
  1253. --- RAMail 2.3
  1254.  * Origin: The Final Program * V32/MNP/PEP * +61-2-548-1340 (3:712/211)
  1255. 
  1256.  
  1257. ------------------------------------------------------------------------
  1258.  
  1259. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  1260.  
  1261.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/05/1992
  1262.   To: BAS VAN GAALEN                  Num: 1282       Date:  2/04/1992
  1263. From: JAY ELKES                        Re:            Time:  4:00 am
  1264. Subj: 4dos ofcourse!                 Prvt: N          Read: N
  1265.  
  1266. BVG>What else can you do with 4Dos? I saw some nice routines like SCREEN...
  1267. BVG>very neat...
  1268.  
  1269. see below for my uses of it
  1270.  
  1271. BVG>Is it also still necessary to run COMMAND.COM (I suppose so...) ? No, as
  1272. the first sentence below states it is a replacement.
  1273.  
  1274.                            The Scoop on 4DOS
  1275.                               by Jay Elkes
  1276.  
  1277. 4DOS is a replacement for the DOS command processor command.com. It does not
  1278. replace MSDOS itself any more than it would replace DR DOS for which it can
  1279. also be used. If you work from the DOS Shell, or from a Windows environment,
  1280. 4DOS will do little or nothing for you. If you are working at the DOS command
  1281. line, especially with batch files, 4DOS has a lot to offer.
  1282.  
  1283. The features I use most are history and logging. The history feature lets me
  1284. talk back through previously issied commands, edit them, and issue them
  1285. again. Even if I were a perfect typist (and I'm not) this feature would be
  1286. useful when I want to do the same thing in multiple directories. The logging
  1287. feature writes my commands, and any note I care to log, to a file. I do this
  1288. more to learn what stupid thing I've done than anything else.
  1289.  
  1290. There is a 4DOS command for anything that DOS has to offer, frequently with
  1291. additional features that may or may not be useful to you. The DIR command
  1292. offers a variety of formats, some of which can be used as input to a pipe
  1293. with no extraneous data. thre DEL command allows you to delete several series
  1294. of files in one command.
  1295.  
  1296. 4DOS also offers a collection of commands not offered by DOS. Three I use a
  1297. lot are MOVE, SELECT, and GLOBAL. MOVE allows me to copy a file from one
  1298. location to another and delete it at its point of origin. If I'm putting a
  1299. disk file on a floppy that I don't want on my hard disk, I use MOVE. SELECT
  1300. is used in conjunction with another command such as DEL or MOVE and a
  1301. wildcard string of file names. Files matching the wildcard criteria are shown
  1302. on a list which allows me to mark the ones I'm interested in. Once I've
  1303. selected the file(s) of interest, the DEL or MOVe (or whatever) is executed
  1304. for each selected file. The GLOBAL command also modifies other commands, in
  1305. its case applying a command to each subdirectory from the current point down.
  1306.  
  1307. Not all 4DOS commands are ideal. 4DOS has a LIST command which is perfectly
  1308. functional, but I prefer the LIST program by Vern Buerg for that purpose. In
  1309. that case, I can use the 4DOS ALIAS command to use the external version
  1310. instead of the internal one. If you're running the same setup I am, you mught
  1311. want to use an ALIAS to define the name EDIT to your favorite editor so LIST
  1312. can find it. ALIASes are short commands kept in memory which can be accessed
  1313. faster than any batch file and don't take up as much room on dik as an
  1314. equivalent set of BAT files. Aliases can be stored on disk as a single file
  1315. so you don't retype them from one session to the next.
  1316.  
  1317. 4DOS BTM files can replace BAT files in many cases. A BAT file gets read and
  1318. executed line by line. 4DOS reads a BTM file once and executes it directly --
  1319. making it much faster than a BAT file if loops are involved. BTM files also
  1320. offer a more powerful set of commands for those of you who are seriously into
  1321. BAT files.
  1322.  
  1323. Since ALIASes take up memory, you may think 4DOS costs memory. In fact, 4DOS
  1324. has a very small portion that runs inside 640K, moving the rest of it to high
  1325. memory. As a consequence, my machine with 4DOS and a bunch of aliases
  1326. actually has more memory available for programs than it did under DOS.
  1327.  
  1328. The NORTON utilities NDOS package is a repackaged (with permission) version
  1329. of 4DOS version 3. The original author, JP Software, has since improved the
  1330. product to version 4.0 but (so far at least) only under the 4DOS name.
  1331.  
  1332. Even with the commercialization of NDOS, 4DOS is a shareware product you can
  1333. pick up from many BBS systems. If you have collected a lot of little command
  1334. line utilities to make your life easier, you'll find many of them included in
  1335. 4DOS.
  1336.  
  1337. Copyright 1992 by Jay G. Elkes. Permission to reprint for nonprofit use is
  1338. hereby granted.
  1339.  
  1340.  * SLMR 2.1a * My reality check just bounced.
  1341.  
  1342.  
  1343.  * SLMR 2.1a * Do Not Attempt to Traverse a Chasm in Two Leaps
  1344.  
  1345.  
  1346. --- Squish v1.00
  1347.  * Origin: K-Line BBS (614)855-2958 1:226/40  (1:226/40)
  1348.  
  1349. ------------------------------------------------------------------------
  1350.  
  1351. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  1352.  
  1353.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/05/1992
  1354.   To: ALL                             Num: 1246       Date:  2/01/1992
  1355. From: ADAM KESSEL                      Re:            Time: 10:46 pm
  1356. Subj: 4START/4EXIT                   Prvt: N          Read: N
  1357.  
  1358.         Here's a little trick that you could probably all figure out *how* to
  1359. do, but might not think to do it.
  1360.         
  1361.         Put the following line your 4START.BTM:
  1362.  
  1363. @If Exist C:\4DOS\4DOS.HIS History /R C:\4DOS\4DOS.HIS
  1364.  
  1365.         And your 4EXIT.BTM:
  1366.  
  1367. @History > C:\4DOS\4DOS.HIS
  1368.  
  1369.         These simple batch files allow you to maintain command-line history
  1370. between shells.  Try installing it, you'll be surprised how useful it is--
  1371. ---------- Adam Kessel "Je ne pense pas, donc je ne suis pas."
  1372.  
  1373. --- TMail v1.25
  1374.  * Origin: -<Wintermute>- Vermont Ed-Net BBS & Hub! (1:325/111)
  1375.  
  1376. ------------------------------------------------------------------------
  1377.  
  1378. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  1379.  
  1380.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/05/1992
  1381.   To: MIKE ARST                       Num: 1258       Date:  2/01/1992
  1382. From: HUGO LANDSMAN                    Re:            Time:  3:35 pm
  1383. Subj: Command grouping and "FOR      Prvt: N          Read: N
  1384.  
  1385. Hoi Mike!
  1386.  
  1387. Op <27 Jan 1992 23:56> schreef Mike Arst (1:343/8.9) aan Peter Wadsworth:
  1388.  
  1389.  MA> Ok, suppose I want to skip .EXE files. If I were using a GOSUB
  1390.  MA> routine I could immediately RETURN if the extension is "EXE." See
  1391.  MA> above where I put the row of "???" commands. What is the method
  1392.  MA> of quitting the routine altogether right at that point and
  1393.  MA> returning to the "FOR" loop without doing ANYTHING there? I tried
  1394.  MA> doing a GOTO and putting it following the ")" but that just stops
  1395.  MA> the batch file.
  1396.  
  1397. Just rearrange it a bit:
  1398.  
  1399. alias getyn `inkey /K"yn" %& %%yn`
  1400. setlocal
  1401. for %X in (*.*) if "%@ext[%X]" ne "exe" (
  1402.   set FI=%@upper[%X]
  1403.   keystack !
  1404.   getyn Process %X ?
  1405.   if "%yn%" == "y" (
  1406.     echo Processing: %FI
  1407.     rem Do real thing here
  1408.     pause Processed %X. Any key.
  1409.   )
  1410. )
  1411.  
  1412. See? Just like IFF...THEN^...^ENDIFF blocks.  4DOS' FOR doesn't have a
  1413. CONTINUE yet, so you have to group what belongs together.
  1414.  
  1415. Greetings,
  1416.            Hugo
  1417. ---
  1418.  * Origin: The fifth columnist (2:283/406.5@fidonet.org)
  1419.  
  1420. ------------------------------------------------------------------------
  1421.  
  1422. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  1423.  
  1424.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/05/1992
  1425.   To: DAN VENTON                      Num: 1280       Date:  2/03/1992
  1426. From: MARK WATKINS                     Re:            Time:  5:44 pm
  1427. Subj: Error message.                 Prvt: N          Read: N
  1428.  
  1429. --- Dan Venton said this to Mark Watkins Re: Error message....
  1430.  
  1431.  > MW> message:
  1432.  > MW>                  4DOS server error -- XMS move failed
  1433.  
  1434.  DV> After looking at your files, the only thing I can tell you to do is
  1435.  DV> try removing all of the programs that make use of XMS one at a time and
  1436.  DV> see if you can find a culprit.
  1437.  
  1438.      Dan,
  1439.  
  1440.      Thanks for trying to help. I found the problem, but I don't understand
  1441. it! It was caused by the following .btm:
  1442.  
  1443. :::::::::::::::::::::::::::::::::: ZDIR.BTM
  1444. :::::::::::::::::::::::::::::::::::
  1445. ::                                                                          
  1446. ::
  1447. ::     Zdir is meant to replace the dir command. It automatically sorts the 
  1448. ::
  1449. :: specified directory into the proper number of columns needed to display  
  1450. ::
  1451. :: the entire directory in a single screen. It uses the /v switch to give a 
  1452. ::
  1453. :: newspaper-style vertical sort. In order to run it when "dir" is typed,   
  1454. ::
  1455. :: alias DIR=zdir. When the batch is run, it temporarily resets dir to its  
  1456. ::
  1457. :: original value to prevent conflicts with functions that issue a "dir"    
  1458. ::
  1459. :: command (such as "select"). It will accept all of the normal dir switches
  1460. ::
  1461. :: and arguments.                                                           
  1462. ::
  1463. ::                                       .\\ark \\'atkins   Tue  01-14-1992
  1464. ::
  1465. ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  1466.  
  1467. cls
  1468. swapping off
  1469. setlocal
  1470. alias dir `*dir`
  1471. *dir %& >e:dir
  1472. set lin=%@lines[e:\dir]
  1473.  
  1474. iff %lin GT 2 .and. %lin LE 23 then
  1475.   *dir %&
  1476.  else
  1477.    iff %lin GT 23 .and. %lin LE 42 then
  1478.     *dir /2v %&
  1479.   else
  1480.     iff %lin GE 43 .and. %lin LT 69 then
  1481.      *dir /4v %&
  1482.    else
  1483.      iff %lin GE 69 then
  1484.       *dir /wvp %&
  1485.  else *dir %&
  1486. endiff
  1487.  
  1488. swapping on
  1489.  
  1490.      After I removed the swapping toggles, the problem stopped (except for
  1491. a slight problem when I exit Desqview, which I won't go into here.). I
  1492. haven't
  1493. been able to find anything in the docs to explain it, but I'm hoping Tom will
  1494. reply to this or my original message and clear things up a bit. If you can
  1495. see the problem please let me know, otherwise thanks for trying.
  1496.  
  1497.                                        .\\ark \\'atkins
  1498.  
  1499.  
  1500.  
  1501. ... Insert dynamite in drive B: and light fuse when ready...
  1502. --- Blue Wave/TG v2.05
  1503.  * Origin: ModemLink BBS =: Yukon, OK := HST/V32 (1:147/24.0)
  1504. 
  1505. ------------------------------------------------------------------------
  1506.  
  1507. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  1508.  
  1509.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/05/1992
  1510.   To: ALL                             Num: 1237       Date:  2/02/1992
  1511. From: MAYNARD HOGG                     Re:            Time: 12:18 am
  1512. Subj: Now.Btm                        Prvt: N          Read: N
  1513.  
  1514. Now that I've sorted out the modulo operator, here's my latest version
  1515. of the cut-rate screen saver posted last December.
  1516.  
  1517. :: Protect environment, aliases, etc.
  1518. setlocal
  1519. :: Just in case user has aliased standard commands...
  1520. :: The ampersand means redirect error input too.
  1521. unalias cls set >& nul
  1522. :: Save original screen colors--a touch the author forgot!
  1523. set old_fg=%_fg
  1524. set old_bg=%_bg
  1525. :: Turn off cursor. Sorry, no way to save cursor shape.
  1526. setdos /s0:0
  1527. :: Each color is three letters long, so we don't have to
  1528. :: use %@WORD here.
  1529. set colors= blu gre red mag cya yel bla whi
  1530. :: Define functions as environment variables. Note the
  1531. :: use of double %% to postpone EVAL, INT, _DATE, _TIME,
  1532. :: etc. till later.
  1533. set dag=%%@eval[%@date[%_date]-%@date[1/1/%@substr[%_date,1,-2]]]
  1534. set dwt=Date: %%_date Week: %%@int[%@eval[(%dag+1)/7+1]] Time: %%_time
  1535. ::top
  1536. set c=1
  1537. :nr
  1538. set wait=
  1539. cls
  1540. :: "Randomize" upper left corner of box using seconds field.
  1541. set z=%@int[%@eval[%@substr[%_time,6,2]/2.6]]
  1542. set s=%@int[%@eval[%@substr[%_time,6,2]/1.6]]
  1543. set bco=%@substr[%colors,%c,3]
  1544. drawbox %z %s %@eval[%z +2] %@eval[%s +43] 2 bri yel on %bco fill %bco
  1545. scrput %@eval[%z +1] %@eval[%s +2] bri whi on %bco %@substr[%dwt,0,40]
  1546. :: Wait up to 10 seconds for keystroke.
  1547. :: Press the space bar to cycle faster.
  1548. inkey /w1 %%wait >nul
  1549. :: If ESC key, exit loop.
  1550. if %@ascii[%wait] eq 27 goto end
  1551. set c=%@EVAL[(%c +4) %% 32]
  1552. :: The modulo operator (%%) makes this test unnecesary.
  1553. :: if "%c" == "33" goto top
  1554. goto nr
  1555. :end
  1556. :: Restore original screen colors--a touch the author forgot!
  1557. cls %old_fg on %old_bg
  1558. :: Restore environment.
  1559. endlocal
  1560. :: Restore cursor.
  1561. setdos /s60:10
  1562. quit
  1563. --- 
  1564.  * Origin: IMS-NET #1 Tokyo,Japan (6:730/6)
  1565.  
  1566. ------------------------------------------------------------------------
  1567.  
  1568. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  1569.  
  1570.  BBS: ASTRIX          Conference: 4DOS            Imported:  2/08/1992
  1571.   To: ALL                             Num: 11269      Date:  2/04/1992
  1572. From: JORJ STRUMOLO                    Re: 0          Time: 11:43 pm
  1573. Subj: Alias: AR0                     Prvt: N          Read: N
  1574.  
  1575.     There's a freeware utility called AR.COM, by Gordon Haff, that can
  1576.  view/extract/delete files in an ARJ archive.  Or at least it could,
  1577.  before the change in header format in ARJ 2.30 messed it up.  I've
  1578.  managed an alias that can duplicate at least the viewing part of AR.COM;
  1579.  I call it AR0.  It presents the inventory list, then extracts the
  1580.  selected file to the screen, using FV.COM, the viewer that comes with
  1581.  Vern Buerg's List.  I'm wondering, is it possible for me to duplicate
  1582.  the delete and extract abilities as well, perhaps using INKEY?  Or would
  1583.  the fact that I am in List (either Vern Buerg's or 4DOS's internal) when
  1584.  I hit the D to Delete or E to Extract make that impossible?  In any case,
  1585.  here's the alias, split into lines for understandability.
  1586.  
  1587.   FV %1 > a.v
  1588.   set ej=%@substr[%@select[a.v,2,9,21,70,┤ Select File to View ├],0,12]
  1589.   del/q a.v
  1590.   if "%ej"="" Quit
  1591.   arj p %1 %ej | List /s
  1592.   set ej=
  1593.  
  1594. ---
  1595.  ■ SPEED 1.0E #1019 ■ Success comes in a can.  Failure comes in a cannot. ■
  1596.  
  1597. PCRelay:IDSVAX -> #82 RelayNet (tm)
  1598.                                                                                                             
  1599. PCRelay:DCINFO -> #16 MetroLink (tm) International Network
  1600. 4.10              DC Info Exchange MetroLink International Hub
  1601.      
  1602.  
  1603. ------------------------------------------------------------------------
  1604.  
  1605. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  1606.  
  1607.  BBS: ASTRIX          Conference: 4DOS            Imported:  2/08/1992
  1608.   To: HAROLD DRABKIN                  Num: 11277      Date:  2/06/1992
  1609. From: DENNIS MCCUNNEY                  Re: 0          Time:  2:27 am
  1610. Subj: detect mouse driver            Prvt: N          Read: N
  1611.  
  1612. HD│ DM>    If you are running 4DOS 4.0, it's simple.  There is a built in
  1613. HD│ DM>variable called %_MOUSE.  This will be set to 1 if a mouse is installed,
  1614. HD│ DM>and 0 if not.
  1615. HD│
  1616. HD│ ARGGH!!!  I was looking and looking through the manual and the line was
  1617. HD│ temporarily transparent!!!  Thanks.
  1618.  
  1619.     I know that feeling!  It *hides* from you, and appears later to
  1620. thumb its metaphorical nose at you and go "Nyah, nyah!  I've been here
  1621. all the time!"
  1622.  
  1623. HD│ DM>    If you don't run 4DOS 4.0, there is a work around.  Due to the way
  1624. HD│ DM>DOS works, device drivers appear to be files in directories.  You can
  1625. HD│ DM>use IF EXIST to test for the existance of the driver, like this:
  1626. HD│
  1627. HD│ AH.  That's why 4dos reports a file called prn, lpt, com1, com2, and con
  1628. HD│ if I type dir lpt*, for example?
  1629.  
  1630.     Yep, that's the reason.  That same trick can also be used to test
  1631. for the existance of a directory, which COMMAND.COM won't let you do
  1632. directly.  (Under 4DOS, "if isdir" does it.)  IF EXIST works on files,
  1633. but not directories, so
  1634.  
  1635.     if exist \foo
  1636.  
  1637. will fail if foo is a directory, but
  1638.  
  1639.     if exist \foo\nul
  1640.  
  1641. will succeed, because DOS will see the nul device in directory foo if
  1642. directory foo exists.
  1643.  
  1644. ---
  1645.  ■ KMail 2.91c The Running Board - The New York Regional Hub for RIME (tm)
  1646.  
  1647. PCRelay:RUNNINGB -> #3 RelayNet (tm)
  1648.                                                                                       
  1649.  
  1650. ------------------------------------------------------------------------
  1651.  
  1652. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  1653.  
  1654.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/08/1992
  1655.   To: MAYNARD HOGG                    Num: 1352       Date:  2/04/1992
  1656. From: ED KOWALSKI                      Re:            Time: 10:16 pm
  1657. Subj: Now.Btm                        Prvt: N          Read: N
  1658.  
  1659.  > :: "Randomize" upper left corner of box using seconds field.
  1660.  > set z=%@int[%@eval[%@substr[%_time,6,2]/2.6]]
  1661.  > set s=%@int[%@eval[%@substr[%_time,6,2]/1.6]]
  1662.  
  1663. Howdy Maynard, something like this is a little more "random"
  1664.  
  1665. set z=%@int[%@eval[(%@substr[%_time,6,2]+%@substr[%_time,3,2])%%22]]
  1666. set s=%@int[%@eval[(%@substr[%_time,6,2]+%@substr[%_time,3,2])%%37]]
  1667.  
  1668. --- FD 1.99c
  1669.  * Origin: Frost Byte Central -Saskatoon,SK-  (1:140/12.9)
  1670.  
  1671. ------------------------------------------------------------------------
  1672.  
  1673. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  1674.  
  1675.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/08/1992
  1676.   To: MARK WATKINS                    Num: 1349       Date:  2/05/1992
  1677. From: DAVID POWERS                     Re:            Time:  7:26 am
  1678. Subj: ZDir                           Prvt: N          Read: N
  1679.  
  1680. Hi Mark!
  1681.  
  1682. I don't know about the swapping problem, but I think these changes will speed
  1683. up the program.
  1684.  
  1685.  > cls
  1686.  > setlocal
  1687.    unalias dir
  1688.  
  1689.    ::get a summary of the dir and from that take the number
  1690.    ::of files, get rid of error messages
  1691.    dir/ku %& >&>nul |set _lin=%@substr["%@line[con,0]",23,9]
  1692.  
  1693.    ::optional stupid check for way-too-high number
  1694.    iff %@index["%_files", ] == -1 then
  1695.      echo There are a million or more files in this directory.
  1696.      echo Time for a new subdirectory.  Quitting.
  1697.      quit
  1698.    endiff
  1699.  
  1700.    ::get the number of files, and get rid of any commas that
  1701.    ::might be in that number (for a message base, I guess, or
  1702.    ::any other dir with >999 files in it)
  1703.    set _files=%@eval[%@substr["%_files",1,%@index["%_files", ]]]
  1704.  
  1705.    iff %_files LE 17 then
  1706.      dir %&
  1707.    elseiff %_files LE 34 then
  1708.      dir /2v %&
  1709.    elseiff %_files LE 68 then
  1710.      dir /4v %&
  1711.    else dir /wvp %&
  1712.  > endiff
  1713.  
  1714. Thanks for the idea!  A simpler version of the above, but a little slower,
  1715. would be to do all the @functions as one line,
  1716.  
  1717.    dir %& |set _files=%@lines[con]
  1718.  
  1719. The numbers above would want to be increased (17 to 23 or so, that kind of
  1720. thing), though.  ttyl.
  1721.  
  1722. ---
  1723.  * Origin: Edges.  It isn't a BBS, it's just an attitude.  SF, CA.
  1724. (1:125/54)
  1725.  
  1726. ------------------------------------------------------------------------
  1727.  
  1728. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  1729.  
  1730.  BBS: ASTRIX          Conference: 4DOS            Imported:  2/09/1992
  1731.   To: ALL                             Num: 11301      Date:  2/06/1992
  1732. From: PIERRE DARMON                    Re: 0          Time: 11:06 am
  1733. Subj: Cmd line alias expansion       Prvt: N          Read: N
  1734.  
  1735. I have cooked up a .btm file that does automatic alias expansion of the
  1736. current command line at the press of a function key. The function key has
  1737. to be aliased properly as explained in the .btm file. Here is expand.btm
  1738.  
  1739. Note: I have replaced <at-sign> with #
  1740. ------------------------------- expand.btm ---------------------------
  1741. #echo off
  1742.  
  1743. rem                  Automatic alias expansion of command line
  1744. rem
  1745. rem A function key must have been assigned the following alias:
  1746. rem #Ctrl-F1=Ctrl-K#expandCtrl-Xr
  1747. rem Ctrl-K and Ctrl-X must be replaced by the actual character
  1748. rem
  1749. rem This puts the current command line into the history buffer without
  1750. rem executing it, and then runs the expand batch file, without placing
  1751. rem the "expand" command into the history
  1752. rem
  1753. rem Can be called repeatedly by pressing the key again.
  1754.  
  1755. setlocal
  1756.  
  1757. rem put the history into a file and grab the last line into cmd
  1758. history>!%vdisk%\$temp$.$$$
  1759. set cmd=%#line[%vdisk%\$temp$.$$$,%#lines[%vdisk%\$temp$.$$$]]
  1760. del %vdisk%\$temp$.$$$ /q
  1761.  
  1762. rem echo cmd is %cmd
  1763. rem extract the first word of the command and set first and rest
  1764. set i=%#index[%cmd, ]
  1765. iff %i == -1 then
  1766.      set first=%cmd
  1767.      set rest=
  1768. else set first=%#substr[%cmd,0,%i]
  1769.      set rest=%#substr[%cmd,%#eval[%i+1]]
  1770. endiff
  1771. rem echo first is %first
  1772. rem echo rest is %rest
  1773.  
  1774. rem if %first is an alias expand it, else beep
  1775. iff isalias %first then
  1776.      rem echo %first is an alias
  1777.      set first=%#alias[%first]
  1778. else rem echo %first is not an alias
  1779.      beep
  1780. endiff
  1781. rem echo %first %rest
  1782.  
  1783. rem Erase the original command from the history (Up Ctrl-D Esc) and place
  1784. rem the expanded command onto the command line without a carriage return
  1785. keystack Up Ctrl-D Esc "%first %rest"
  1786.  
  1787. endlocal
  1788. quit
  1789. ------------------------------- expand.btm ---------------------------
  1790.  
  1791. This works fine, except for one thing. If the alias contains a
  1792. redirection symbol, the redirection will take place when the alias
  1793. expansion is performed. Does anyone know of a way around this?
  1794.  
  1795. Also if someone knows how I could get the expansion to take place on the
  1796. same screen line as the original, that would be great. Even though I
  1797. placed an <at-sign> in front of expand in the key alias, it still shows
  1798. on the screen. I have tried to place a ^ after the Ctrl-K in the key
  1799. alias definition but then it seems to hang (I can get out with Ctrl-Break
  1800. however).
  1801.  
  1802. If anyone has suggestions on how to improve on this batch file, you are
  1803. more than welcome. In the mean time, enjoy your alias expansion.
  1804.  
  1805. Pierre Darmon
  1806.  
  1807. PCRelay:OURHOUSE -> #1339 RelayNet (tm)
  1808.                  
  1809.  
  1810. ------------------------------------------------------------------------
  1811.  
  1812. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  1813.  
  1814.  BBS: ASTRIX          Conference: 4DOS            Imported:  2/09/1992
  1815.   To: DENNIS MCCUNNEY                 Num: 11303      Date:  2/06/1992
  1816. From: GREG VAIDMAN                     Re: 0          Time: 11:55 pm
  1817. Subj: Multiple commands              Prvt: N          Read: N
  1818.  
  1819. ╓──┤ on 02-06-92 (20:37), dennis mccunney said about "multiple commands" ├───╖
  1820. ║                                                                            ║
  1821. ║ DM├╢│GV│         why not use a key alias whose first char is a control-k,  ║
  1822. ║   ├╢│GV│         runs a command which pipes the command history into a fil ║
  1823. ║   ├╢│GV│         parses the file useing the %#lines[] & %#line[] functions ║
  1824. ║   ├╢│GV│         tried this when he first mentioned it, but forgot to post ║
  1825. ║   ├╢│GV│         reply ( i had to go to work! ).                           ║
  1826. ║                                                                            ║
  1827. ║ DM├╢│    Did it work?  I tried a variant on that idea and it didn't work   ║
  1828. ║   ├╢│for me.                                                               ║
  1829. ║                                                                            ║
  1830. ╙─────────────╥────────────────────────────────────────────────╥─────────────╜
  1831.               ║ and greg vaidman replied on fri, 02-07-1992... ║
  1832.               ╙────────────────────────────────────────────────╜
  1833.  
  1834.         yep, try this:
  1835.  
  1836.                          ╓─── control-k
  1837.                          ║             ╓─── control-x
  1838.                                       
  1839.             alias {at}={^k}c:\getline{^x}r
  1840.  
  1841.         and create getline.btm:
  1842.  
  1843.             {at}echo off
  1844.             setlocal
  1845.             set f=%{at}unique[%tmp]
  1846.             history >! %f
  1847.             set l=%{at}eval[%{at}lines[%f]-1]
  1848.             echo «%{at}line[%f,%l]»
  1849.             del/q %f
  1850.  
  1851.         obviously, this depends on the user not changing the default
  1852.         keystrokes, which is very easy to do with the 4dos.ini file.
  1853.         of course, you could parse the file for the ^k char, and
  1854.         pipe the output of setdos for the ^x char, but WHY!?
  1855.  
  1856.                                                                      OΓεO
  1857.                                                                      ⌡  ⌡
  1858. ---
  1859.  ■ OLX 2.1 ■ I'd like a brain on drugs with a side order of bacon.
  1860.  
  1861. PCRelay:DATABASE -> #1251 RelayNet (tm)
  1862.                                                                                                                             
  1863. PCRelay:DCINFO -> #16 MetroLink (tm) International Network
  1864. 4.10              DC Info Exchange MetroLink International Hub
  1865.      
  1866.  
  1867. ------------------------------------------------------------------------
  1868.  
  1869. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  1870.  
  1871.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/10/1992
  1872.   To: RALPH SIMS                      Num: 1451       Date:  2/07/1992
  1873. From: RAYMOND BERIAU                   Re:            Time:  5:48 pm
  1874. Subj: %@diskfree                     Prvt: N          Read: N
  1875.  
  1876. Hello Ralph Sims (1:343/94).
  1877. In a message dated 05-Feb-92 @ 08:20, you wrote to All:
  1878.  
  1879.  RS> I give up.  How can I test for freespace on a drive and execute a 
  1880.  RS> command if that freespace is less than n mBytes.  4DOS 4.0 Rev B1 in 
  1881.  RS> use.
  1882.  
  1883. How about using a variation of the following:
  1884.  
  1885.      set drive=%1 ^ if "%1" == "" set drive=c
  1886.      set maxbytes=%2 ^ if "%2" == "" set maxbytes=10000
  1887.      iff "%@diskfree[%drive:,b]" gt "%maxbytes" then
  1888.          rem Command to be executed when the disk space is greater than
  1889.          rem a preset maximum number of bytes.
  1890.      endiff
  1891.      set maxbytes=
  1892.      set drive=
  1893.      quit
  1894.  
  1895. You can call the above batch file with {drive_letter} {maximum_bytes}. 
  1896. Otherwise, the default drive will be "C" and the maximum byte value will be
  1897. 10000
  1898.  
  1899. --- Msged/sq
  1900.  * Origin: INFODATA Informations - HST/DS [v.32|v.42Bis] (1:242/90)
  1901.  
  1902. ------------------------------------------------------------------------
  1903.  
  1904. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  1905.  
  1906.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/10/1992
  1907.   To: RALPH SIMS                      Num: 1469       Date:  2/07/1992
  1908. From: WILLIAM HUGHES                   Re:            Time:  7:16 pm
  1909. Subj: %@diskfree                     Prvt: N          Read: N
  1910.  
  1911. RS>I give up.  How can I test for freespace on a drive and execute a
  1912.   >command if that freespace is less than n mBytes.  4DOS 4.0 Rev B1 in
  1913.   >use.
  1914.  
  1915. if %@diskfree[drive,m] LT n do something
  1916.  
  1917.  * SLMR 2.1a * Press any key to continue or any other key to quit
  1918.  
  1919. --- MsgToss 1.9c (r)
  1920.  * Origin: Nul 512-615-NUL1 HST/V32b,615-NUL2, NUL3, 1.2Gig(1:387/255)
  1921.  
  1922. ------------------------------------------------------------------------
  1923.  
  1924. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  1925.  
  1926.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/10/1992
  1927.   To: MORRIS TURPIN                   Num: 1424       Date:  2/07/1992
  1928. From: TOM RAWSON                       Re:            Time:  1:43 pm
  1929. Subj: %@exec[  ]                     Prvt: N          Read: N
  1930.  
  1931.  MT> Following your message as a guide, I added the READHIST
  1932.  MT> alias (I already had the 4EXIT.BTM file) and modified my 
  1933.  MT> prompt to add "%@exec[readhist]" at the beginning of my 
  1934.  MT> prompt, just after the "`".  The top line of my prompt 
  1935.  MT> worked as before, but the second line (which was "C>", 
  1936.  MT> created by the "$n$g") now became "0C>".  I assume that 
  1937.  MT> the "0" is the errorcode returned by the %@exec[] command, 
  1938.  MT> but isn't the errorcode supposed to be trapped by the 
  1939.  MT> ">&nul" at the end of the alias?  The only solution that I 
  1940.  MT> could come up with to eliminate the unwanted "0" was to 
  1941.  MT> add a "$h" after the "%@exec[readhist]" command which finally gave me:
  1942.  
  1943. Oops -- my oversight.  The $h is required as you found.  >&nul won't fix it
  1944. as it is not output, it is prompt text!
  1945.  
  1946.                                                       ... Tom
  1947.  
  1948.  
  1949. --- EZPoint V2.1
  1950.  * Origin: Tom's EZPoint (1:130/29.110)
  1951. 
  1952. ------------------------------------------------------------------------
  1953.  
  1954. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  1955.  
  1956.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/10/1992
  1957.   To: MARTIN GERDES                   Num: 1464       Date:  2/07/1992
  1958. From: JOHN GOODIN                      Re:            Time:  3:26 am
  1959. Subj: CD-ing  - keyboard  d          Prvt: N          Read: N
  1960.  
  1961. Heres a neat little batch file/alias for changing to any drive and
  1962. subdirectory.
  1963.  
  1964. Syntax is TO d sub1 sub2 sub3
  1965.  
  1966. Example: TO C 4DOS MYALIAS BATCHES
  1967. Would change to C: and then type CD\4DOS\MYALIAS\BATCHES
  1968.  
  1969. Here is the short version.
  1970. @ECHO OFF
  1971. CLS
  1972. REM Change Drive
  1973. %1:
  1974. REM Jump to any subdirectory up to eight levels deep.
  1975. FOR %%A IN (\ %2 %3 %4 %5 %6 %7 %8 %9) DO CHDIR %%A
  1976.  
  1977. Could be rewritten as an alias, However this will run under any version of
  1978. DOS from version 3.20 and up.
  1979.  
  1980. Reguardless of the keyboard being used, you can change to any sub without
  1981. having to locate the blasted \ key. No two keyboard manufacturers ever put
  1982. it in the same place don't you know.  
  1983.  
  1984. ---
  1985.  * Origin: PC MUNCHLAND (404) 561-8043 -- Christian Ethics!!! (1:3613/10.9)
  1986.  
  1987. ------------------------------------------------------------------------
  1988.  
  1989. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  1990.  
  1991.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/11/1992
  1992.   To: DAVID POWERS                    Num: 1493       Date:  2/08/1992
  1993. From: MARK WATKINS                     Re:            Time: 10:03 am
  1994. Subj: ZDir                           Prvt: N          Read: N
  1995.  
  1996. --- David Powers said this to Mark Watkins Re: ZDir...
  1997.  
  1998.  DP> Hi Mark!
  1999.  
  2000.  DP> I don't know about the swapping problem, but I think these changes
  2001.  DP> will speed up the program. 
  2002.  
  2003.      David,
  2004.  
  2005.      Thanks! I was hoping someone would have a way to speed it up. That's
  2006. the reason I wanted to toggle swapping in the first place. Your method
  2007. sped things up noticeably. Here's the current ZDIR (I had to change a couple
  2008. of things):
  2009.  
  2010.    cls
  2011.    setlocal           >need the original dir alias to be restored later!
  2012.    alias dir `*dir`
  2013.  
  2014.    dir/ku %& >&>nul |set _files=%@substr["%@line[con,0]",23,9]
  2015.                            *
  2016.                            ********** >I think this was still "lin" in your
  2017.                                       >message.
  2018.  
  2019.    iff %@index["%_files", ] == -1 then
  2020.      echo There are a million or more files in this directory.
  2021.      echo Time for a new subdirectory.  Quitting.
  2022.      quit
  2023.    endiff
  2024.  
  2025.    set _files=%@eval[%@substr["%_files",1,%@index["%_files", ]]]
  2026.  
  2027.    iff %_files LE 20 then              >changed the number of files
  2028.      dir %&                            >in this section.
  2029.    elseiff %_files LE 42 then
  2030.      dir /2v %&
  2031.    elseiff %_files LE 69 then
  2032.      dir /4v %&
  2033.    else dir /wvp %&
  2034.  endiff
  2035.  
  2036.                                    Thanks a bunch!
  2037.  
  2038.                                         .\\ark \\'atkins
  2039.  
  2040.  
  2041. ... C program run... Run, program, run...   PLEASE!!!!
  2042. --- Blue Wave/TG v2.05
  2043.  * Origin: Dr.Image - Home of Graphics (405)842-6831 HST (1:147/88.0)
  2044.  
  2045. ------------------------------------------------------------------------
  2046.  
  2047. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  2048.  
  2049.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/12/1992
  2050.   To: TOM RAWSON                      Num: 1510       Date:  2/09/1992
  2051. From: MARK WATKINS                     Re:            Time:  9:39 am
  2052. Subj: Error message.                 Prvt: N          Read: N
  2053.  
  2054. --- Tom Rawson said this to Mark Watkins Re: Re: Error message....
  2055.  
  2056.  MW> For the last couple of days I've been getting the following error
  2057. message:
  2058.  MW>                   4DOS server error -- XMS move failed
  2059.  
  2060.  
  2061.  TR> This means the XMS driver couldn't swap 4DOS back in.  It should NEVER
  2062.  TR> happen, unless somebody trashed our memory or the XMS driver itself. 
  2063.  TR> I think you have to follow the procedures in the manual for cleaning
  2064.  
  2065.      Tom -
  2066.  
  2067.      I found the culprit, but I don't understand why it would cause the
  2068. problem I was having. It was caused by the swapping toggles in the following
  2069. .btm:
  2070.  
  2071. :::::::::::::::::::::::::::::::::: ZDIR.BTM
  2072. :::::::::::::::::::::::::::::::::::
  2073. ::                                                                          
  2074. ::
  2075. ::     Zdir is meant to replace the dir command. It automatically sorts the 
  2076. ::
  2077. :: specified directory into the proper number of columns needed to display  
  2078. ::
  2079. :: the entire directory in a single screen. It uses the /v switch to give a 
  2080. ::
  2081. :: newspaper-style vertical sort. In order to run it when "dir" is typed,   
  2082. ::
  2083. :: alias DIR=zdir. When the batch is run, it temporarily resets dir to its  
  2084. ::
  2085. :: original value to prevent conflicts with functions that issue a "dir"    
  2086. ::
  2087. :: command (such as "select"). It will accept all of the normal dir switches
  2088. ::
  2089. :: and arguments.                                                           
  2090. ::
  2091. ::                                       .\\ark \\'atkins   Tue  01-14-1992 
  2092. ::
  2093. ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  2094.  
  2095. cls
  2096. setlocal
  2097. alias dir `*dir`
  2098. *dir %& >e:dir
  2099. set lin=%@lines[e:\dir]
  2100.  
  2101. iff %lin GT 2 .and. %lin LE 23 then
  2102.   *dir %&
  2103.  else
  2104.    iff %lin GT 23 .and. %lin LE 42 then
  2105.     *dir /2v %&
  2106.   else
  2107.     iff %lin GE 43 .and. %lin LT 69 then
  2108.      *dir /4v %&
  2109.    else
  2110.      iff %lin GE 69 then
  2111.       *dir /wvp %&
  2112.  else *dir %&
  2113. endiff
  2114.  
  2115.       When I removed the swapping commands, I stopped getting the error
  2116. message. Here are my config files:
  2117.  
  2118. CONFIG.SYS:
  2119. device=c:\dos\himem.sys /hmamin=10
  2120. device=c:\above\emsdrvr.sys
  2121. lastdrive=G
  2122. device=c:\dos\ramdrive.sys 1440 512 112 /e
  2123. device=c:\dos\ramdrive.sys 350 /e
  2124. device=c:\vansi.sys
  2125. device=c:\vgadisk.sys
  2126. install=c:\4dos\kstack.com
  2127. files=99
  2128. buffers=20
  2129. dos=high
  2130. shell=c:\4dos\4dos.com
  2131.  
  2132. AUTOEXEC.BAT:
  2133. Loadbtm off
  2134. Swapping off
  2135. Verify On
  2136. Break On
  2137. alias /r c:\4dos\aka
  2138. c:\bin\Timepark 3
  2139. c:\dos\Mode Con Rate=32 Delay=1
  2140. c:\pctools\Mirror C:
  2141. c:\bin\fmark e:\cache
  2142. c:\pctools\pc-cache /write=on /sizext=800 /id /ie /if /quiet
  2143. c:\pctools\datamon /light+ /tracker+
  2144. c:\bin\newkeys
  2145. c:\bin\cboot nocrit
  2146. c:\bin\toglclok c1b d-
  2147. c:\bin\mark z
  2148. set /r c:\4dos\reset
  2149. loadbtm on
  2150. copy/q c:\4dos\4*.com;*.ini;4*.btm e:\ >NUL
  2151. copy/q \archive\zip\pkunzip.*;pkzip.* e:\ >NUL
  2152. copy/q \bin\q.*;mark.*;release.*;list.*;fv.*;zgen.exe;ncd.*;scan.* e:\ >NUL
  2153. copy/q c:\bat\*.bat;zd*.* e:\           >NUL
  2154. beep 1953 1 1800 1 1953 1
  2155. Swapping on
  2156.  
  2157. 4DOS.INI:
  2158. Alias = 9216
  2159. Ansi = Yes
  2160. BatchEcho = No
  2161. BeepFreq = 883
  2162. BeepLength = 3
  2163. ColorDir = wks th? cap gl fon dvp dvs:yel;doc me txt lst asc msg:bri cya;
  2164.            slt fr?:bri yel;zip arj lzh sdn arc pak zoo:bri blu;
  2165.            gif bak slc we?:mag;com exe btm bat tu?:gre;sys sa? dl bbs
  2166. use:red;
  2167.            cfg ini pif dat cnf mo?:blu;log dirs su?:cya;fli new:bri gre;
  2168.            1st:bri bli red on bla;Hidden:bri bla on bla
  2169. CursorIns = 30
  2170. CursorOver = 5
  2171. Environment = 1536
  2172. EnvFree = 128
  2173. HelpPath = c:\4dos
  2174. HistMin = 4
  2175. History = 1024
  2176. HistWinColor = cyan
  2177. StackSize = 5120
  2178. StdColors = whi on bla
  2179. Swapping =  xms, d:\, c:\4dos
  2180.  
  2181.          Any ideas??
  2182.  
  2183.                                 Thanks,
  2184.  
  2185.                                    .\\ark \\'atkins
  2186.  
  2187. ... 4dos 4ever!
  2188. --- Blue Wave/TG v2.05
  2189.  * Origin: ModemLink BBS =: Yukon, OK := HST/V32 (1:147/24.0)
  2190.  
  2191. ------------------------------------------------------------------------
  2192.  
  2193. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  2194.  
  2195.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/12/1992
  2196.   To: ALL                             Num: 1503       Date:  1/29/1992
  2197. From: DAVID BLISS                      Re:            Time:  9:54 pm
  2198. Subj: Useful Tip                     Prvt: N          Read: N
  2199.  
  2200. Hey all!  Heres a handy little alias that took me a while to figure
  2201. out... it sets up 4Dos to use a 2 column dir normally, BUT if there
  2202. are any descriptions for files in this dir, it defaults back to 1
  2203. column with descriptions!  Note that this is not perfect (Notably
  2204. doing DIR C:\WHATEVER\*.* doesn't detect descriptions), but feel
  2205. free to improve or modify it any way you want...
  2206.  
  2207. DIR=iff exist descript.ion then^*dir %& /1/p^else^*dir %& /2/p^endiff
  2208.  
  2209. Dave
  2210.  
  2211.  * SLMR 2.1 * What does this red button do?
  2212. --- 
  2213.  * Origin: The Aliens BBS (1:376/92)
  2214.  
  2215. ------------------------------------------------------------------------
  2216.  
  2217. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  2218.  
  2219.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/12/1992
  2220.   To: ALL                             Num: 1500       Date:  1/29/1992
  2221. From: DAVID BLISS                      Re:            Time:  9:41 pm
  2222. Subj: Running Ra & 4Dos4             Prvt: N          Read: N
  2223.  
  2224. Tip for anyone running RA & 4Dos4..
  2225.  
  2226. To make entrys to the system log in standard RA format, set the
  2227. env variable RANODE to node number (01 normally), and use this
  2228. BTM....
  2229.  
  2230. @echo off
  2231. set t=%_time
  2232. set d=%_date
  2233. set m=%@substr[%d,0,2]
  2234. set day=%@substr[%d,3,2]
  2235. if %m == 01 set m=Jan^goto mcvt
  2236. if %m == 02 set m=Feb^goto mcvt
  2237. if %m == 03 set m=Mar^goto mcvt
  2238. if %m == 04 set m=Apr^goto mcvt
  2239. if %m == 05 set m=May^goto mcvt
  2240. if %m == 06 set m=Jun^goto mcvt
  2241. if %m == 07 set m=Jul^goto mcvt
  2242. if %m == 08 set m=Aug^goto mcvt
  2243. if %m == 09 set m=Sep^goto mcvt
  2244. if %m == 10 set m=Oct^goto mcvt
  2245. if %m == 11 set m=Nov^goto mcvt
  2246. if %m == 12 set m=Dec^goto mcvt
  2247. :mcvt
  2248. echo > %day-%m %t RA%bbsnode %&
  2249. unset t d m day
  2250.  
  2251. PS If anyone can suggest a faster method (Even tho this takes under .2 secs!)
  2252. I'd appreciate it.
  2253.  
  2254. Dave
  2255.  
  2256.  * SLMR 2.1 * If screwups were dollars, I'd be a millionaire!!
  2257. --- 
  2258.  * Origin: The Aliens BBS (1:376/92)
  2259.  
  2260. ------------------------------------------------------------------------
  2261.  
  2262. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  2263.  
  2264.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/13/1992
  2265.   To: TOM RAWSON                      Num: 1556       Date:  2/11/1992
  2266. From: LARRY MINTON                     Re:            Time:  9:10 am
  2267. Subj: %@exec[...]                    Prvt: N          Read: N
  2268.  
  2269. TR>I don't think so.  %@EXEC can't chasnge the content of the rest of the
  2270. TR>prompt ... well maybe you could do it with another variable:
  2271.  
  2272. I liked this one I came up with.  It's for a batch file that creates
  2273. temporary files that I want to delete if the user ctrl-c's out of the batch
  2274. file:
  2275.  
  2276. set sprompt=%prompt
  2277. set file=%@unique[.]
  2278. prompt `%@exec[del/q %file^set prompt=%sprompt^unset file sprompt]$h%prompt`
  2279. LAM
  2280. ===
  2281.  * SLMR 2.1a * Nothing is so smiple that it can't get screwed up.
  2282.  
  2283. --- ConfMail V4.00
  2284.  * Origin: Utilities Exchange (614-442-6696)-Utilities Exchange BBS
  2285. (1:226/60)
  2286.  
  2287. ------------------------------------------------------------------------
  2288.  
  2289. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  2290.  
  2291.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/14/1992
  2292.   To: MARK WEISS                      Num: 1558       Date:  2/03/1992
  2293. From: TONY DUNLAP                      Re:            Time:  9:05 am
  2294. Subj: 4DOS.INI                       Prvt: N          Read: N
  2295.  
  2296.  >  TD> PROMPT $E[25;1H$E[10;41;33m(%%@dosmem[k]K)[$P]$E[1;44;33m 
  2297.  >  TD>                ^^^^^^^^^^^^                   ^^^^^^^^^^^
  2298.  >  TD> The first one makes the prompt bright yellow on red.
  2299.  >  TD> After the prompt is displayed, the second one changes
  2300.  
  2301.  > Unfortunately, I'm trying to avoid that bane of device drivers --
  2302.  > mainly ANSI.SYS.  <grin>
  2303.  
  2304. Been thinking...
  2305.  
  2306. Prompt %@exec[color whi on bla]$h$P$G will work without ansi.
  2307.  
  2308. The $h is to erase the return code from the @exec.
  2309.  
  2310. Later
  2311.  
  2312. ---
  2313.  * Origin: ODOT District 9 (1:2220/30)
  2314.  
  2315. ------------------------------------------------------------------------
  2316.  
  2317. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  2318.  
  2319.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/13/1992
  2320.   To: CARTER RAINES                   Num: 1537       Date:  2/04/1992
  2321. From: BILL HAYLES                      Re:            Time:  9:18 pm
  2322. Subj: Prompt                         Prvt: N          Read: N
  2323.  
  2324.    Hi, Carter,
  2325.    On 27th January you asked all:
  2326.    CR> Is there any way to make the prompt one color and the
  2327.    text another?
  2328.  
  2329.    Yes, there is - as long as you have ANSI.SYS (or
  2330.    equivalent) loaded.  One of the beauties of 4DOS is that
  2331.    it allows 255 characters per command line (COMMAND.COM
  2332.    only allows 127), so that some complex prompts can be
  2333.    built up. I set up different prompts as environment
  2334.    variables so that I know what shell I'm in, and whether
  2335.    it's 4DOS or otherwise. Three of my prompts each of which
  2336.    is, of course one command line, are as follows:
  2337.  
  2338.    SET PROMPT1=$e[37;44m$e[KSecondary 4DOS Shell No.$z on $d
  2339.    at $t$_$e[34;47m$e[KBase Memory: %%@dosmem[K]K ║ Expanded
  2340.    Memory: %%@ems[K]K ║ Extended Memory:
  2341.    %%@xms[K]K$_$e[37;44m$e[KCurrent Path is $P $e[5m»»
  2342.    $e[0;31;46m$e[K
  2343.  
  2344.    This gives me a part white on blue and part blue on white
  2345.    prompt with red on cyan text
  2346.  
  2347.  
  2348.    SET PROMPT2= $e[33;46m$e[KPrimary 4DOS Shell No.$z on $d
  2349.    at $t$_$e[36;43m$e[KBase Memory: %%@dosmem[K]K ║ Expanded
  2350.    Memory: %%@ems[K]K ║ Extended Memory:
  2351.    %%@xms[K]K$_$e[33;46m$e[KCurrent Path is $P $e[5m»»
  2352.    $e[0;31;46m$e[K
  2353.  
  2354.    This gives a part yellow on cyan and part cyan on yellow
  2355.    prompt with my red on cyan text
  2356.  
  2357.  
  2358.    Secondary DRDos Shell under Powermenu on $d at
  2359.    $t$_$e[36;41mCurrent Path is $e[36;41mCurrent Path is
  2360.    $e[31;46m $P $e[5m»» $e[0;31;46m
  2361.  
  2362.    This is the COMMAND.COM prompt, of necessity shorter, but
  2363.    still with a cyan on red prompt and red on cyan text.
  2364.  
  2365.    Hope this answers your problem and gives you some ideas
  2366.    Bill
  2367.  
  2368.  
  2369.  
  2370.                   ----------------------------------------
  2371.  
  2372. TNT XL/v6.0α
  2373.  
  2374.  
  2375. --- HALCYON 5.00B
  2376.  * Origin: Fox's Den BBS (0689) 827085 (2:440/28)
  2377.  
  2378. ------------------------------------------------------------------------
  2379.  
  2380. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  2381.  
  2382.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/15/1992
  2383.   To: ALL                             Num: 1571       Date:  2/11/1992
  2384. From: TONY DUNLAP                      Re:            Time: 10:00 pm
  2385. Subj: 4FILL.BTM                      Prvt: N          Read: N
  2386.  
  2387. This BTM will copy (or move) files from a subdirectory to a
  2388. diskette, asking you to insert diskettes until all the specified files are
  2389. copied (or moved). Any descriptions will follow the files. It uses a couple
  2390. of temporary files to store the filenames in order from largest to smallest
  2391. in order to attempt a best-fit. An option to format between diskettes is
  2392. provided and if the target is not empty, you are prompted if you want to
  2393. delete the files on the target.
  2394.  
  2395. It works by creating a file containing the files (fitting the filespec you
  2396. supply on the command line) to be copied in biggest to smallest order. Then
  2397. it takes one file at a time from that list and compares its size with the
  2398. remaining space on the drive. If it fits, it will be coppied. If not, it is
  2399. redirected to a second file. After it has processed all of the files in the
  2400. first list, it deletes the first list then tests for the existence of the
  2401. second list. If the second list is not there, all of the files from the first
  2402. list were copied and you are done, If the second list does exist, it is
  2403. renamed to the first list and you are prompted to insert another disk and the
  2404. process starts over at the beginning of this paragraph.
  2405.  
  2406. I'm sure it's not perfect, but I haven't broke it yet. It will
  2407. fill diskettes when possible to within 1k. Any suggestions on streamlining or
  2408. otherwise improving it are welcome.
  2409.  
  2410. The BTM will be posted in the following 2 messages, each about 75 lines long.
  2411. I will post the BTM ---ONCE ONLY---
  2412.  
  2413. If someone misses a part, or your BBS cuts the end off of them (FIDONET specs
  2414. allow up to 64k in a message, some BBS software doesn't) ask your sysop F'req
  2415. the file "4FILL.ZIP" from 1:2220/30.
  2416.  
  2417. ---
  2418.  * Origin: DISCOVER (1:2220/30.1)
  2419.  
  2420. ------------------------------------------------------------------------
  2421.  
  2422. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  2423.  
  2424.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  1/16/1992
  2425.   To: JACK SHOUP                      Num: 1608       Date:  2/12/1992
  2426. From: DAVID POWERS                     Re:            Time:  8:16 am
  2427. Subj: Deleting small files           Prvt: N          Read: N
  2428.  
  2429. Hi,
  2430.  
  2431.  > Anybody got a .BTM or complex alias that will examine
  2432.  > a directory and delete all files whose size is less
  2433.  > than some specified (in the procedure) small number of
  2434.  > bytes, say all files less than 24 bytes long??
  2435.  
  2436. In 4Dos 4, you could do this:
  2437.  
  2438.  setlocal
  2439.  set _highnum=25
  2440.  iff %# gt 0 then
  2441.   iff %# == 1 then
  2442.    alias iff=elseiff
  2443.    set _then=then
  2444.   endiff
  2445.   *iff isdir %1 then
  2446.    cdd %1
  2447.   iff "%@int[%[%#]]" == "%[%#]" %_then set _highnum=%[%#]
  2448.   else
  2449.    echo I can't find "%@upper[%1]" dir.
  2450.    quit
  2451.   endiff
  2452.  endiff
  2453.  for %kill in (*.*) if %@filesize[%kill] lt %_highnum del/q %kill
  2454.  endlocal
  2455.  
  2456. where syntax is:
  2457.  
  2458.  KILSMALL [path] [smallest size to allow]
  2459.  
  2460. It's a little slow; I'm sure someone will have a faster routine than the For
  2461. loop for this.
  2462.  
  2463. While testing this, I deleted the file that FrontDoor uses to manage system
  2464. security, and befuddled myself.  This program works as advertized! :)
  2465.  
  2466. ---
  2467.  * Origin: Edges.  It isn't a BBS, it's just an attitude.  SF, CA. (1:125/54)
  2468.  
  2469. ------------------------------------------------------------------------
  2470.  
  2471. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  2472.  
  2473.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/19/1992
  2474.   To: LARRY MINTON                    Num: 1627       Date:  2/14/1992
  2475. From: MAYNARD HOGG                     Re:            Time: 12:41 pm
  2476. Subj: %@Exec[...]                    Prvt: N          Read: N
  2477.  
  2478. LM>---
  2479. set sprompt=%prompt
  2480. set file=%@unique[.]
  2481. prompt `%@exec[del/q %file^set prompt=%sprompt^
  2482.   unset file sprompt]$h%prompt`
  2483. LM>---
  2484.  
  2485. I love it! TRAP for DOS!
  2486.  
  2487. You forgot to mention, however, that this must precede SETLOCAL.
  2488. --- 
  2489.  * Origin: IMS-NET #1 Tokyo,Japan (6:730/6)
  2490.  
  2491. ------------------------------------------------------------------------
  2492.  
  2493. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  2494.  
  2495.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/19/1992
  2496.   To: GEORGE WORLEY & ALL             Num: 1644       Date:  1/21/1992
  2497. From: CHRIS RAISIN                     Re:            Time: 11:44 pm
  2498. Subj: 4DOS and aliases               Prvt: N          Read: N
  2499.  
  2500. In a message from GEORGE WORLEY
  2501.                to ALL                           Recvd:
  2502.                on 13-01-92 (19:59)
  2503. the following comments flew around the world:
  2504. =============================================
  2505. GW>Hi everybody,
  2506.  
  2507. GW>Is there a way to check to see if the alias's have changed so that upon a
  2508. GW>4EXIT you can save the current alias?
  2509.  
  2510. George, there is no way that I know of to do this, but the following
  2511. system is the one I use....and it works beutifully!
  2512.  
  2513. 1. Create a file called ALIASES.TXT in the subdirectory where you
  2514.    store your 4DOS files.
  2515.  
  2516. 2. Using an editor write your aliases one to a line in the following
  2517.    format:
  2518.  
  2519.    AL=d:\4dos4\al.btm
  2520.    ALI*AS=alias /p
  2521.  
  2522.    etc.
  2523.    etc.
  2524.  
  2525.    NOTE: The two aliases shown above should be placed in this file.
  2526.          The first one must be there, the second is optional.
  2527.  
  2528. 3. In your subdirectory where you house 4DOS (d:\4dos4 on my system)
  2529.    create the following BTM file called AL.BTM:
  2530.    (Note: Some changes may be needed, e.g. if you do not use qedit
  2531.     etc.)
  2532.  
  2533.    qedit d:\4dos4\aliases.txt
  2534.    cls
  2535.    unalias *
  2536.    alias /r d:\4dos4\aliases.txt
  2537.    sort < d:\4dos4\aliases.txt > d:\4dos4\aliases.srt
  2538.    del d:\4dos4\aliases.old
  2539.    ren d:\4dos4\aliases.txt aliases.old
  2540.    ren d:\4dos4\aliases.srt aliases.txt
  2541.    echo Aliases updated!
  2542.  
  2543.    This routine will allow you to add/edit an alias, dump all the
  2544.    current aliases, load the new list, sort the new list and save
  2545.    it anew, and tell you that they have been updated!
  2546.  
  2547. 4. As part of your starting-up procedure (i.e. in AUTOEXEC.BAT or a
  2548.    batch file that AUTOEXEC.BAT calls, place the following line:
  2549.  
  2550.    call d:\4dos4\aliases.btm
  2551.  
  2552.     Do NOT place it in your 4START.BTM file, since you do not want it
  2553.     to load every timne you shell into a secondary (or lower) shell.
  2554.  
  2555. 5. In your 4DOS subdirectory create a file called ALIASES.BTM which
  2556.    reads:
  2557.  
  2558.    echo Setting up aliases...
  2559.    unalias *
  2560.    alias /r d:\4dos4\aliases.txt
  2561.    echo Aliases established!
  2562.    echo.
  2563.    echo.
  2564.  
  2565. And that should do it! It is a shame that we cannot attach a comment
  2566. line to each alias so that when you run the command ESET a
  2567. description of what the alias does is there for the operator to see.
  2568. I hope this all makes sense....let me know how you went and if you
  2569. have any improvements to this humble but effective system.....regards
  2570. from a 4DOS4 Aussi freak......
  2571.  
  2572.  * SLMR 2.1 * !retupmoc siht edisni deppart m'I !!pleH
  2573.  
  2574.  * SLMR 2.1 * 
  2575.  
  2576. --- Maximus 2.00
  2577.  * Origin: Brisbug PC User Group BBS (3:640/821)
  2578.  
  2579. ------------------------------------------------------------------------
  2580.  
  2581. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  2582.  
  2583.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/19/1992
  2584.   To: ALL                             Num: 1712       Date:  2/11/1992
  2585. From: HENK SIMMELINK                   Re:            Time:  8:14 pm
  2586. Subj: changing to a subdirector      Prvt: N          Read: N
  2587.  
  2588. G'Day 2 U *
  2589.  
  2590. Do you have it too, wanna go to a subdirectory where a certain utility or
  2591. program is located, but it is a long name to type? I do and often I have of
  2592. these programs an environment variable set..... Very frustrating if you
  2593. can't use them! That's why I came up with something like this:
  2594. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
  2595. rem the file envio is my list of variables, I thought it was "enviornment"
  2596. rem a long time ago, never changed it since then.... :-)
  2597. set ttemp=%@select[%@path[%comspec]\envio, 0, 10, 24, 70, Choose:]
  2598. if "%ttemp" == "" quit
  2599. set ttemp3=%@full[%@substr[%ttemp, %@eval[%@index[%ttemp,=]+1]]]
  2600. iff isdir %ttemp3 then
  2601.     cdd %ttemp3
  2602.     unset ttemp ttemp3
  2603. else
  2604.     set ttemp4=%@path[%@full[%ttemp3]]
  2605.     %ttemp4
  2606.     unset ttemp ttemp3 ttemp4
  2607. endiff
  2608. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
  2609. Someone suggestions?
  2610.  
  2611. First I used a SETLOCAL-statement, but then the original directory is
  2612. restored after finishing the batchfile..... So is it possible to use the
  2613. setlocal-statement WITH changing drive/directory?
  2614.                 Yours sincerely,
  2615.                       Henk Simmelink
  2616.  
  2617.  
  2618. --- GEcho/beta
  2619.  * Origin: Hup hub, hup hub, hup hub, hup hub Albert! (2:283/4.6)
  2620.  
  2621. ------------------------------------------------------------------------
  2622.  
  2623. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  2624.  
  2625.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/19/1992
  2626.   To: MAYNARD HOGG                    Num: 1676       Date:  2/15/1992
  2627. From: HUGO LANDSMAN                    Re:            Time:  6:10 pm
  2628. Subj: Cursor On/Off                  Prvt: N          Read: N
  2629.  
  2630. Hoi Maynard!
  2631.  
  2632. Op <10 Feb 1992 21:54> schreef Maynard Hogg (6:730/6) aan Mark Ruys:
  2633.  
  2634.  MH> Thanks, MARK RUYS and HUGO LANDSMAN. I had to add the UNALIAS because
  2635.  MH> my alias for SET was getting in the way.
  2636.  
  2637. You could insert a * before SET to prevent the alias expansion.
  2638.  
  2639.  MH> I'm a little leery of the magic number 7, however, since the
  2640.  
  2641. Right, Mark too.  And I wouldn't like it my batchfiles as well.  So, change
  2642. this:
  2643.  
  2644.  MH> setdos|(set %@line[con,7]^set %@line[con,0])
  2645.  
  2646. to:
  2647.      setdos|(set %@line[con,%_co_magic]^set %@line[con,0])
  2648.  
  2649. Now, where does _CO_MAGIC come from?  You set it in your AUTOEXEC.BAT with
  2650. the lines:
  2651.  
  2652.     call co_magic
  2653.     set _co_magic=%?
  2654.  
  2655. Of course, you'll need the CO_MAGIC.BTM too:
  2656.  
  2657.     setlocal
  2658.     set file=%@unique[%temp]
  2659.     setdos>!%file
  2660.     setdos/e%@char[1]
  2661.     set n=0
  2662.     :Loop
  2663.     set l=%@line[%file,%n]
  2664.     if %l==**EOF** goto End
  2665.     iff %@index[%l,CURSOR OVERSTRIKE]==0 then^set return=%n
  2666.     elseiff %@index[%l,ESCAPE]==0 then^set %l^setdos/e%escape
  2667.     endiff
  2668.     set n=%@eval[%n+1]
  2669.     goto Loop
  2670.     :End
  2671.     del/q %file
  2672.     quit %return
  2673.  
  2674. The escape character would generate a syntax error when read unchanged, so I
  2675. had to kludge around it a bit.  But it gets restored to the original value
  2676. (not %@char[1]) too.
  2677.  
  2678. Greetings,
  2679.            Hugo
  2680.  
  2681. --- Msged/Q 1.60
  2682.  * Origin: The fifth columnist (2:283/406.5)
  2683.  
  2684. ------------------------------------------------------------------------
  2685.  
  2686. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  2687.  
  2688.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/19/1992
  2689.   To: JACK SHOUP                      Num: 1707       Date:  2/13/1992
  2690. From: WILLIAM HUGHES                   Re:            Time: 12:36 pm
  2691. Subj: Deleting Small files           Prvt: N          Read: N
  2692.  
  2693. JS>Anybody got a .BTM or complex alias that will examine a directory and
  2694.   >delete all files whose size is less than some specified (in the
  2695.   >procedure) small number of bytes, say all files less than 24 bytes
  2696.   >long??
  2697.  
  2698. alias killsmal `pushd ^ cdd %1 ^ global /I for %a in (*.*) if
  2699. %@filesize[%a,b] LT %2 del %a ^ popd`
  2700.  
  2701. Call this with KILLSMAL [drive:\directory] [size]
  2702.  
  2703. Remove the "global /I" if you do not want it to recurse into lower
  2704. directories.
  2705.  
  2706.  * SLMR 2.1a * 
  2707.  
  2708. --- MsgToss 1.9d (r)
  2709.  * Origin: Nul 512-615-NUL1 HST/V32b,615-NUL2, NUL3, 1.2Gig (1:387/255)
  2710.  
  2711. ------------------------------------------------------------------------
  2712.  
  2713. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  2714.  
  2715.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/19/1992
  2716.   To: HEINZ SONNENWALD                Num: 1630       Date:  2/15/1992
  2717. From: MAYNARD HOGG                     Re:            Time:  8:39 am
  2718. Subj: Double Commands In Histor      Prvt: N          Read: N
  2719.  
  2720. HS>how I can delete double Entries in the History-List?
  2721.  
  2722. How about this variation on p. 228 in the manual?
  2723.  
  2724. >setlocal
  2725. >set tmpfile=%@unique[.]
  2726. >history |tolower |sort |uniq >%tmpfile
  2727. >history /f
  2728. >history /r %tmpfile
  2729. >del %tmpfile
  2730.  
  2731. Note: %@unique[] requires DOS 3.0 and above.
  2732. --- 
  2733.  * Origin: IMS-NET #1 Tokyo,Japan (6:730/6)
  2734.  
  2735. ------------------------------------------------------------------------
  2736.  
  2737. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  2738.  
  2739.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/19/1992
  2740.   To: ALL                             Num: 1682       Date:  2/16/1992
  2741. From: MARK WATKINS                     Re:            Time:  2:22 pm
  2742. Subj: Pakem.btm 1/3                  Prvt: N          Read: N
  2743.  
  2744.         Hello All! -
  2745.  
  2746.         While we're waiting for Tony D. to post his 4fill.btm, I thought
  2747. I'd go ahead and post my pakem.btm. It sounds like it takes the same
  2748. approach to filling diskettes, and I thought it would be interesting to
  2749. compare them. Pakem isn't finished yet, as I intend to add a few features
  2750. such as selective deletion and formatting of the target disk, and the option
  2751. of redirecting the list of unprocessed files to a diskfile. I don't know when
  2752. I'll find time to do this so I decided to go ahead and post pakem now. It
  2753. works
  2754. great here and I'd be interested in any feedback you may have. Always looking
  2755. for more efficient way to 4DOS.
  2756.  
  2757.          Here's the 3-part debug script. Instructions are at the end.
  2758.  
  2759.  N PAKEM.ZIP
  2760.  E 0100 50 4B 03 04 0A 00 00 00 06 00 12 6F 50 18 AA 97
  2761.  E 0110 3A 40 4E 07 00 00 12 15 00 00 09 00 00 00 50 41
  2762.  E 0120 4B 45 4D 2E 42 54 4D 0D 02 01 12 23 14 15 36 37
  2763.  E 0130 68 89 9A DB 3C 05 06 12 13 44 C5 F6 96 F7 75 EA
  2764.  E 0140 08 0E 7C 90 50 C3 AE 2D DB D6 A5 58 BA 6D 41 A8
  2765.  E 0150 07 56 F0 6C A8 40 FE 41 04 47 11 40 E3 52 CB C6
  2766.  E 0160 AD 9B 56 6E D9 39 CA 9B 26 D1 A7 53 88 B7 4B BC
  2767.  E 0170 78 5D 82 1C FA 96 ED 5B B9 20 DB BE 75 9B 96 CE
  2768.  E 0180 F1 C3 F1 DE 66 CB CA 21 DE 64 5D 40 03 F2 D4 BC
  2769.  E 0190 6E E9 86 C5 D3 95 04 B9 F5 67 97 E1 AD D2 65 59
  2770.  E 01A0 BC 74 8E DF 6C 5A B6 65 8C 73 97 2E 9A 81 00 1A
  2771.  E 01B0 2E 38 9F 5A C6 7E 8F A5 D3 74 5D 53 C4 72 2E 1C
  2772.  E 01C0 E8 F5 AC 5B 82 6C 5A 77 CE F5 1A DE 65 41 CE 59
  2773.  E 01D0 AA C3 9C DD 20 C5 CA 0D 3B 86 7C D3 9D F3 BC DF
  2774.  E 01E0 82 0C CB 96 0D 34 30 82 83 C2 CD 41 DE 4D B3 FF
  2775.  E 01F0 62 CB FC F5 B7 63 9C 97 B7 26 C3 AC CC D5 94 0B
  2776.  E 0200 7A D3 4D DB B6 AC 0B 68 80 14 B6 BB 7D 33 BC 90
  2777.  E 0210 5C CA 0A D9 63 CA BC 09 72 2C 9A B5 7B AE 0B 68
  2778.  E 0220 4B DE 6F DB B6 0D EB 96 0C 34 40 65 9B D6 6D 19
  2779.  E 0230 20 01 2B 6C 40 B2 3D C0 0B 7E AA 68 D3 8C B9 C5
  2780.  EE0044  88BB  EE22  7744  BB55  2200  7722  88DD  BB11
  2781.  
  2782. EE0055  3311  DD11  77CC  77FF  EE77  DD44  AA77  BB22
  2783.  
  2784. EE0066  99BB  99BB  FFAA  EEFF  1188  44AA  33AA  EE44
  2785.  
  2786. EE0077  7799  AA77  55BB  4400  0011  6666  AAFF  9933
  2787.  
  2788. EE0088  FF99  99BB  BBAA  BBDD  AA99  33DD  DD66  5533
  2789.  
  2790. EE0099  FF44  AACC  3377  DD11  4455  2299  FF77  CCFF
  2791.  
  2792. EE00AA  EE44  2211  EEDD  BB55  00CC  44DD  2299  1155
  2793.  
  2794. EE00BB  AA44  AA22  FF33  EE88  9944  DD77  8811  EEAA
  2795.  
  2796. EE00CC  DDCC  DDAA  1199  BB88  77FF  EEBB  88DD  11EE
  2797.  
  2798. EE00DD  0066  AA33  DD22  CC00  3333  DDFF  3377  33AA
  2799.  
  2800. EE00EE  9999  FF55  7799  77BB  3366  AA44  EE44  AA44
  2801.  
  2802. EE00FF  2288  FFDD  9955  2277  BBAA  66AA  11DD  11DD
  2803.  
  2804. EE0000  9999  55BB  8811  CC00  CC88  66BB  5533  CCAA
  2805.  
  2806. EE0011  5511  CCDD  99EE  66BB  6677  11FF  44CC  66AA
  2807.  
  2808. EE0022  8888  BBDD  7766  00FF  66CC  AA99  8888  DD88
  2809.  
  2810. EE0033  2277  FF22  BBAA  6688  3300  00FF  CCBB  11AA
  2811.  
  2812. EE0044  0077  44BB  6699  FFDD  BB00  DD66  8899  CC55
  2813.  
  2814. EE0055  7744  AA22  11EE  4400  2266  FFEE  55BB  4422
  2815.  
  2816. EE0066  FFDD  33EE  77BB  77CC  EE55  FFDD  BB77  4400
  2817.  
  2818. EE0077  7744  FFEE  4455  EE22  99DD  FF88  44DD  1199
  2819.  
  2820. EE0088  88DD  AA77  DDFF  5566  7744  2222  CCAA  BB88
  2821.  
  2822. EE0099  DD00  FFBB  CCEE  0099  11CC  9911  66FF  CC99
  2823.  
  2824. EE00AA  3366  EECC  66DD  2277  BB11  11DD  55DD  22BB
  2825.  
  2826. EE00BB  AAEE  DD33  4499  0066  44FF  DD99  0066  CCAA
  2827.  
  2828. EE00CC  EEAA  6633  CCCC  BB22  CCCC  33AA  6688  DD66    
  2829.  
  2830. --  lleeWWvv//GGvv..55    rrggnn  ooeeLLnn  BB  ::YYkknn  KK::  SS//33  11117722..))
  2831. ------------------------------------------------------------------------
  2832.  
  2833. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  2834.  
  2835.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/19/1992
  2836.   To: ALL                             Num: 1683       Date:  2/16/1992
  2837. From: MARK WATKINS                     Re:            Time:  2:23 pm
  2838. Subj: Pakem.btm 2/3                  Prvt: N          Read: N
  2839.  
  2840.  E 03D0 74 EA 41 D6 94 11 FE 67 06 77 E1 95 E0 93 8D 7A
  2841.  E 03E0 F5 DA 2D 17 6E 1D BF 3A 46 B1 96 C1 BE A6 75 9A
  2842.  E 03F0 F0 7C EB D0 2E BC 21 B7 36 ED E2 1B 51 7B FF 01
  2843.  E 0400 9F AC 09 72 E6 0C F8 D8 22 9F 7D 39 85 3C D4 2E
  2844.  E 0410 3B B7 8E B1 A3 EB A2 C5 02 D6 2F D7 8A 1C DB 06
  2845.  E 0420 CA 5D E2 CF 02 BB AD 39 9C 2B 38 EB 21 53 54 D2
  2846.  E 0430 75 0F 5A CB 97 72 CC 43 6E 62 1E 69 52 C3 7C 84
  2847.  E 0440 09 B5 50 05 33 13 40 D2 DE 75 CC 04 5A B0 9E 09
  2848.  E 0450 83 CE 50 18 57 25 92 D6 11 26 32 06 FB B6 C1 1E
  2849.  E 0460 1B A4 89 29 24 88 00 65 50 2B 88 61 4E 05 91 72
  2850.  E 0470 AE B4 A4 C3 54 96 90 EE 3D C3 EA 10 0F 59 8C 78
  2851.  E 0480 64 B1 3A EE 84 52 D4 C9 F4 ED 9B D9 72 15 7F DA
  2852.  E 0490 56 18 49 1C 96 82 6F 61 B3 6B 91 0F C2 35 BC 04
  2853.  E 04A0 40 77 99 2E 7E 63 26 4F 55 87 06 1D 1F 03 BA FB
  2854.  E 04B0 04 E9 B4 2A 93 64 82 60 AA 66 70 E6 B5 0A 86 37
  2855.  E 04C0 3E B7 18 E1 FD 56 E7 1C E4 5D D2 C4 FD 8D 87 21
  2856.  E 04D0 96 46 B2 7E C9 12 0C 97 A3 04 32 1E 36 C5 15 4A
  2857.  E 04E0 D1 1A C5 F9 2A 7D B9 AB 77 5D 12 C8 61 7A 5A BD
  2858.  E 04F0 65 B7 CC 77 96 62 62 6A 33 A5 62 7D EC 7A EE 5A
  2859.  E 0500 33 A0 51 D6 17 26 85 3D 6A E1 DD E0 4F 10 8C 82
  2860.  E 0510 20 DD 36 B5 9A 58 DB 35 0A E3 BA 0C 1E 46 91 7B
  2861.  E 0520 6D 9A 41 52 4F 7B 8B 56 51 DF 71 67 6B 1F 49 21
  2862.  E 0530 CB 48 4A 8D CF 14 C6 E3 E7 44 20 86 73 0B DE 49
  2863.  E 0540 CD BC 09 B4 AF 59 2B 9B BD 22 49 C5 7C 57 B3 AA
  2864.  E 0550 8D 08 91 47 1D C6 79 E0 8E 58 CC 98 88 9D C6 0B
  2865.  E 0560 CC 52 D2 65 90 90 45 CF AD 3B 46 AD 34 5B 27 7A
  2866.  E 0570 E7 F1 B8 B8 73 94 D7 DB 5A A0 CD 0E 07 9D D0 94
  2867.  E 0580 42 17 89 63 B5 4E D7 79 CA 3C 62 9F D1 1E 9E 06
  2868.  E 0590 1E AF CB 3A E0 19 A8 99 47 68 19 DB 3B 46 6B 74
  2869.  E 05A0 4D 1C E3 63 2F 02 D9 48 8D CA AB D1 94 19 D3 EC
  2870.  E 05B0 34 20 21 5C 44 6E 37 1F 6D 39 7E 3F FA 20 60 1F
  2871.  E 05C0 3E D5 87 98 8C 0D DD 75 CB EC C7 35 82 E0 8F 48
  2872.  E 05D0 B4 8B 43 A5 F3 0C F4 90 55 46 6C F7 B1 31 EE C3
  2873.  E 05E0 46 B9 DF 51 5C 5A D3 19 8F B1 55 1B 0A 27 57 E8
  2874.  E 05F0 2A B4 D6 1E AF F2 B8 63 C9 F4 6A 44 89 D0 54 73
  2875.  E 0600 1E 98 AA E3 8A 10 6C E6 7A 38 D8 83 A1 C3 6D 91
  2876.  E 0610 6A 24 85 80 54 33 C9 E5 DC B0 A3 F0 77 71 9F 4A
  2877.  E 0620 CC 42 DF 31 EE CF 67 2A 53 8F C5 A5 75 90 47 5A
  2878.  E 0630 AA 61 3C 57 9E 01 D3 DA 70 A9 E1 45 C2 83 1D 23
  2879.  E 0640 3C 93 0D C2 75 62 B1 5B CC 63 5F 6C 8C E8 9C 6E
  2880.  E 0650 5E 38 A0 02 F9 45 6F 0A 49 27 F6 E3 65 EC 07 33
  2881.  E 0660 C6 7E 04 DA A0 4C 0B 81 D0 05 9D A0 8F 19 A9 E2
  2882.  E 0670 15 19 78 E8 64 AA 48 29 42 70 C2 28 48 29 5F CA
  2883.  E 0680 B4 0B 27 22 B3 55 25 94 28 D6 AE 04 32 A1 48 60
  2884.  E 0690 23 30 77 03 F9 A2 7C DC DB F3 A6 23 23 DB 4D F2
  2885.  E 06A0 B0 41 B4 4B 17 7B E3 14 55 F0 CD 3A 1D 8D 30 45
  2886.  E 06B0 55 97 88 42 09 7A CE 81 03 34 26 F4 11 4C D8 31
  2887.  E 06C0 69 18 59 19 85 44 94 9B 31 F2 C3 50 28 9B 50 84
  2888.  E 06D0 E9 22 4D 25 26 D1 DC 52 4C A1 18 65 30 05 E2 18
  2889.  E 06E0 4C A1 6B 91 CC 68 E1 93 9C CE 29 8F 79 4E CD 83
  2890.  E 06F0 C0 1C AF 0E D5 AB 49 E9 9F 5D 5E 00 1D E3 B8 94
  2891.  E 0700 D9 A5 EB 4D DD 63 5D 14 59 05 57 EB F5 8F A0 92
  2892.  E 0710 6C DD 31 2A 58 7C A0 31 EB DA 85 79 18 09 72 A3
  2893.  E 0720 5C 65 35 1B BD AA B1 8A 51 6B 52 CB FD 58 7B 35
  2894.  E 0730 04 81 31 16 82 41 23 06 6D 6A B9 63 6A 84 68 48
  2895.  E 0740 3E 08 4C 0F 8A 00 8D 08 AE 32 60 25 0A 82 1E CD
  2896.  E 0750 42 7E 7D 22 0B 0E 06 D3 5A A5 4B 3D 09 BD 77 14
  2897.  E 0760 2F CA 68 35 C5 CF 16 6D 18 F9 40 4B F3 14 66 87
  2898.  E 0770 51 8C A6 43 A7 DE 09 67 7E D5 D4 1E 93 3F E7 D2
  2899.  E 0780 71 87 9D 32 E6 42 FA 20 E1 C0 45 48 95 5D 52 DA
  2900.  E 0790 9B D6 9D A3 08 6D AC 42 84 C5 82 C6 2B AC 13 59
  2901.  E 07A0 E4 0B 06 FB DC 37 48 0A 7F 20 0A CE A6 AC 50 40
  2902.  E 07B0 17 B3 01 61 C3 D0 80 C1 82 3C 4D 05 5C 74 C2 05
  2903.  E 07C0 07 45 69 C3 08 EA 02 30 0C D9 37 34 EE A8 2E 09
  2904.  E 07D0 70 43 9C 07 D7 6D DB 86 E1 24 16 1C 78 8A 19 94
  2905.  E 07E0 6B 8C B8 C5 51 9A 48 C6 A9 D8 26 58 E8 04 6F C6
  2906.  E 07F0 DB 44 F0 F2 A2 B6 73 E8 0D 63 A2 D7 60 AF C4 E7
  2907.  E 0800 1D 31 6D F1 7D 07 F4 4D 97 8E C0 99 EF DC 25 57
  2908.  E 0810 2E D2 EB A1 57 F1 3E D1 E6 1A F0 65 D2 CB EE 53
  2909.  E 0820 45 73 31 1B A6 CC 16 35 AD 84 77 CE 9C 32 9C BA  
  2910. --- Blue Wave/TG v2.05
  2911.  * Origin: ModemLink BBS =: Yukon, OK := HST/V32 (1:147/24.0)
  2912.  
  2913. ------------------------------------------------------------------------
  2914.  
  2915. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  2916.  
  2917.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/19/1992
  2918.   To: ALL                             Num: 1684       Date:  2/16/1992
  2919. From: MARK WATKINS                     Re:            Time:  2:23 pm
  2920. Subj: Pakem.btm 3/3                  Prvt: N          Read: N
  2921.  
  2922.  E 0830 CC 99 3A 69 CA D4 39 23 97 8F 72 6C 8A E9 7E 54
  2923.  E 0840 4E E7 A6 96 28 B7 18 CB AD 2D 54 AE 37 9D 6B 51
  2924.  E 0850 E6 62 88 A1 AD CF A2 E9 E3 46 6D BE D3 76 7E 92
  2925.  E 0860 11 99 12 90 E0 AA A0 D1 22 F4 FD 32 CE 75 68 1D
  2926.  E 0870 20 D6 0D 9F 39 50 4B 01 02 0B 00 0A 00 00 00 06
  2927.  E 0880 00 12 6F 50 18 AA 97 3A 40 4E 07 00 00 12 15 00
  2928.  E 0890 00 09 00 00 00 00 00 00 00 01 00 20 00 00 00 00
  2929.  E 08A0 00 00 00 50 41 4B 45 4D 2E 42 54 4D 50 4B 05 06
  2930.  E 08B0 00 00 00 00 01 00 01 00 37 00 00 00 75 07 00 00
  2931.  E 08C0 EE 01 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 20
  2932.  E 08D0 20 20 DA C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4
  2933.  E 08E0 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4
  2934.  E 08F0 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4
  2935.  E 0900 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 BF 0D 0A 20 20
  2936.  E 0910 20 20 20 20 20 20 20 20 B3 20 43 6F 6D 70 6C 69
  2937.  E 0920 6D 65 6E 74 73 20 6F 66 2E 2E 2E 20 20 20 20 20
  2938.  E 0930 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
  2939.  E 0940 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
  2940.  E 0950 20 B3 0D 0A 20 20 20 20 20 20 20 20 20 20 B3 20
  2941.  E 0960 20 20 D6 20 20 20 20 20 20 20 D6 C4 B7 20 20 20
  2942.  E 0970 20 20 20 20 20 20 20 20 20 20 20 20 D2 20 20 20
  2943.  E 0980 D6 C4 B7 20 20 20 20 20 20 20 20 20 D2 20 20 20
  2944.  E 0990 2E 20 20 20 20 20 20 B3 0D 0A 20 20 20 20 20 20
  2945.  E 09A0 20 20 20 20 B3 20 20 20 BA 20 D6 C4 B7 20 20 20
  2946.  E 09B0 BA C4 D2 20 B7 C4 B7 20 20 2D B7 20 B7 C4 B7 20
  2947.  E 09C0 D6 C4 B6 20 20 20 D6 2F BD 20 D6 C4 B7 20 D2 D2
  2948.  E 09D0 D2 20 C7 C4 B7 20 D2 20 D6 C4 B7 20 20 B3 0D 0A
  2949.  E 09E0 20 20 20 20 20 20 20 20 20 20 B3 20 20 20 BD 20
  2950.  E 09F0 D3 C4 C4 20 20 20 D3 C4 BD 20 D0 20 20 20 D3 2D
  2951.  E 0A00 D0 20 BD 20 BD 20 D3 C4 D0 20 20 20 D3 C4 BD 20
  2952.  E 0A10 D3 C4 BD 20 BD 20 BD 20 D3 C4 BD 20 BD 20 D3 C4
  2953.  E 0A20 C4 20 20 B3 0D 0A 20 20 20 20 20 20 20 20 20 20
  2954.  E 0A30 B3 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
  2955.  E 0A40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
  2956.  E 0A50 20 20 20 20 20 20 2E 5C 5C 61 72 6B 20 5C 5C 27
  2957.  E 0A60 61 74 6B 69 6E 73 20 20 20 B3 0D 0A 20 20 20 20
  2958.  E 0A70 20 20 20 20 20 20 C0 C4 C4 C4 C4 C4 C4 C4 C4 C4
  2959.  E 0A80 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4
  2960.  E 0A90 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4
  2961.  E 0AA0 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 D9
  2962.  RCX
  2963.  09B0
  2964.  W
  2965.  Q
  2966.  
  2967.     If you have downloaded this script file, remove
  2968.     any captured communications header and then enter
  2969.  
  2970.         DEBUG < filename
  2971.  
  2972.     where filename is the name of this script file.
  2973.  
  2974.  
  2975.                                    Yours truly,
  2976.  
  2977.                                          .\\ark \\'atkins
  2978.  
  2979.  
  2980.  
  2981. ... J'suis le Grand Zombie!
  2982. --- Blue Wave/TG v2.05
  2983.  * Origin: ModemLink BBS =: Yukon, OK := HST/V32 (1:147/24.0)
  2984.  
  2985. ------------------------------------------------------------------------
  2986.  
  2987. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  2988.  
  2989.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/19/1992
  2990.   To: JEAN-CHRISTIAN AUCLAIR          Num: 1711       Date:  2/11/1992
  2991. From: HENK SIMMELINK                   Re:            Time:  7:43 pm
  2992. Subj: VIEW/DESCRIBE                  Prvt: N          Read: N
  2993.  
  2994. Hello Jean-christian!
  2995.  
  2996. In a message to All Jean-christian Auclair writes on 07 Feb 92:
  2997.  
  2998.  JA> I'd like to SELECT files that I can view (with an external viewer
  2999.  JA> program) and then DESCRIBE, one by one. Is there a simple way to do
  3000.  JA> this using the 4DOS btm commands? Thanks. JC.
  3001.  
  3002. Try this:
  3003. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
  3004. setlocal
  3005. set ttemp=%@unique[%temp]
  3006. dir /b>%ttemp
  3007. :loop
  3008.     describe %@select[%ttemp,0,10,24,70, Select file to describe:]
  3009.     inkey Would you like to describe another one? %%tttemp
  3010. iff %@ascii[%tttemp] ne 32 then
  3011.     quit
  3012.     del  /q %ttemp
  3013. else
  3014.     goto loop
  3015. endiff
  3016. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
  3017.                 Yours sincerely,
  3018.                       Henk Simmelink
  3019.  
  3020.  
  3021. --- GEcho/beta
  3022.  * Origin: Hup hub, hup hub, hup hub, hup hub Albert! (2:283/4.6)
  3023.  
  3024. ------------------------------------------------------------------------
  3025.  
  3026. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  3027.  
  3028.  BBS: ASTRIX          Conference: 4DOS            Imported:  2/20/1992
  3029.   To: GREG VAIDMAN                    Num: 11328      Date:  2/09/1992
  3030. From: DENNIS MCCUNNEY                  Re: 0          Time:  6:22 pm
  3031. Subj: Multiple commands              Prvt: N          Read: N
  3032.  
  3033. GV│ ║ DM├╢│GV│         why not use a key alias whose first char is a control-k,║
  3034. GV│ ║   ├╢│GV│         runs a command which pipes the command history into a fi║
  3035. GV│ ║                                                                          ║
  3036. GV│ ║ DM├╢│    Did it work?  I tried a variant on that idea and it didn't work ║
  3037. GV│ ║   ├╢│for me.                                                             ║
  3038. GV│
  3039. GV│         yep, try this:
  3040. GV│             alias {at}={^k}c:\getline{^x}r
  3041. GV│
  3042. GV│         and create getline.btm:
  3043.  
  3044.     Thanks, Greg.  I'll give this a shot and see what happens.  I didn't
  3045. have time to play with it all that much before.
  3046.  
  3047.  
  3048. PCRelay:RUNNINGB -> #3 RelayNet (tm)
  3049. 4.10                Running Board 2126541349/DS/2125191791/HST/
  3050.                     
  3051.  
  3052. ------------------------------------------------------------------------
  3053.  
  3054. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  3055.  
  3056.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/20/1992
  3057.   To: DROR TIROSH                     Num: 411        Date:  2/18/1992
  3058. From: TOM RAWSON                       Re:            Time:  6:54 pm
  3059. Subj: Calling convention tn          Prvt: N          Read: N
  3060.  
  3061.  DT> I've found it quite irritating that I have to know whether
  3062.  DT> I call a batch utility or an alias.
  3063.  DT> I have some small batch programs, which must be called 
  3064.  DT> using 'CALL name' from a batch file. I found out that some 
  3065.  DT> can be shortened and would be usefull as aliases, but that 
  3066.  DT> would mean I have to remove the 'CALL' from all the callers.
  3067.  
  3068. Ah but you can CALL an alias.  A bit of an accident but it does work.
  3069.  
  3070.                                                   ... Tom
  3071.  
  3072.  
  3073.  
  3074. --- EZPoint V2.1
  3075.  * Origin: Tom's EZPoint (1:130/29.110)
  3076. 
  3077. ------------------------------------------------------------------------
  3078.  
  3079. Echo Flag :         Permanent: N       Export: N      Personal Read: Y
  3080.  
  3081.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/19/1992
  3082.   To: MAYNARD HOGG                    Num: 1676       Date:  2/15/1992
  3083. From: HUGO LANDSMAN                    Re:            Time:  6:10 pm
  3084. Subj: Cursor On/Off                  Prvt: N          Read: N
  3085.  
  3086. Hoi Maynard!
  3087.  
  3088. Op <10 Feb 1992 21:54> schreef Maynard Hogg (6:730/6) aan Mark Ruys:
  3089.  
  3090.  MH> Thanks, MARK RUYS and HUGO LANDSMAN. I had to add the UNALIAS because
  3091.  MH> my alias for SET was getting in the way.
  3092.  
  3093. You could insert a * before SET to prevent the alias expansion.
  3094.  
  3095.  MH> I'm a little leery of the magic number 7, however, since the
  3096.  
  3097. Right, Mark too.  And I wouldn't like it my batchfiles as well.  So, change
  3098. this:
  3099.  
  3100.  MH> setdos|(set %@line[con,7]^set %@line[con,0])
  3101.  
  3102. to:
  3103.      setdos|(set %@line[con,%_co_magic]^set %@line[con,0])
  3104.  
  3105. Now, where does _CO_MAGIC come from?  You set it in your AUTOEXEC.BAT with
  3106. the lines:
  3107.  
  3108.     call co_magic
  3109.     set _co_magic=%?
  3110.  
  3111. Of course, you'll need the CO_MAGIC.BTM too:
  3112.  
  3113.     setlocal
  3114.     set file=%@unique[%temp]
  3115.     setdos>!%file
  3116.     setdos/e%@char[1]
  3117.     set n=0
  3118.     :Loop
  3119.     set l=%@line[%file,%n]
  3120.     if %l==**EOF** goto End
  3121.     iff %@index[%l,CURSOR OVERSTRIKE]==0 then^set return=%n
  3122.     elseiff %@index[%l,ESCAPE]==0 then^set %l^setdos/e%escape
  3123.     endiff
  3124.     set n=%@eval[%n+1]
  3125.     goto Loop
  3126.     :End
  3127.     del/q %file
  3128.     quit %return
  3129.  
  3130. The escape character would generate a syntax error when read unchanged, so I
  3131. had to kludge around it a bit.  But it gets restored to the original value
  3132. (not %@char[1]) too.
  3133.  
  3134. Greetings,
  3135.            Hugo
  3136.  
  3137. --- Msged/Q 1.60
  3138.  * Origin: The fifth columnist (2:283/406.5)
  3139.  
  3140. ------------------------------------------------------------------------
  3141.  
  3142. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  3143.  
  3144.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/20/1992
  3145.   To: ALL                             Num: 405        Date:  2/18/1992
  3146. From: MARK WATKINS                     Re:            Time:  6:47 pm
  3147. Subj: Pakem additions                Prvt: N          Read: N
  3148.  
  3149.         If anyone reassembled my pakem.btm from the debug scripts I posted a
  3150. couple of days ago, here are some changes you may be interested in...
  3151.  
  3152.         I added selective file deletion and formatting (of the target disk)
  3153. to
  3154. the options menu. Replace the original "pick" section with:
  3155.  
  3156. :pick
  3157.  
  3158.   *cls bla on blu bor mag
  3159.   drawhline 0 0 79 2 blu on blu
  3160.   drawbox  6 19 14 59 2 bri whi on mag fill bla sha
  3161.   scrput 8 22 whi on bla [C] Insert next disk and Continue
  3162.   scrput 9 22 whi on bla [D] Directory of target disk
  3163.   scrput 10 22 whi on bla [S] Select files to delete (target)
  3164.   scrput 11 22 red on bla [ ] Format target
  3165.   scrput 11 23 bri yel on bla !
  3166.   scrput 12 22 whi on bla [Q] Quit
  3167.   scrput 17 33 bri whi on blu Enter choice:
  3168.  
  3169.   inkey /k"qcds!" %%pick
  3170.  
  3171.   if "%pick" == "q" (
  3172.     cls bor bla
  3173.     scrput 0 0 bri whi on red Aborted at user request.
  3174.     screen 1 0 Files not processed:
  3175.     screen 3 0
  3176.     iff %@filesize[%temp%pakem2.tmp,b] LE %@filesize[%temp%pakem1.tmp,b] then
  3177.       gosub sub1
  3178.       type %temp%pakem2.tmp /p
  3179.     else
  3180.       gosub sub2
  3181.       type %temp%pakem1.tmp /p
  3182.     endiff
  3183.     goto end
  3184.     )
  3185.  
  3186.   if "%pick" == "c" goto Loop
  3187.  
  3188.   if "%pick" == "d" (
  3189.     cls bor blu
  3190.     *dir/2vp %target
  3191.     echo.
  3192.     pause Press any key to return to Pakem...
  3193.     goto pick
  3194.     )
  3195.  
  3196.    if "%pick" == "s" (
  3197.     cls bor blu
  3198.     select *del (%target%*.*)
  3199.     goto pick
  3200.     )
  3201.  
  3202.    if "%pick" == "!" (
  3203.     cls bor blu
  3204.     call format %target        <-- "call" is used because I use PCTools
  3205.                                     pcformat.exe, which is called from
  3206.                                     format.bat. You may wish to change it.
  3207.     goto pick
  3208.     )
  3209.  
  3210.         After I posted the file I discovered a bug that attempted to operate
  3211. on files in subdirectories in the CWD if there were no parameters on the
  3212. command line, or if "*.*" was used as the parameter (I only tested pakem on
  3213. directories with no subs - shame on me!). Here's the fix:
  3214.  
  3215.    Change the line
  3216.  
  3217. if not exist %temp%pakem1.tmp *dir /b /o:sr %& > %temp%pakem1.tmp
  3218.  
  3219.    to
  3220.  
  3221. if not exist %temp%pakem1.tmp *dir /b /a:-d /o:sr %& > %temp%pakem1.tmp
  3222.  
  3223.          Finally, you may wish to add the line "alias cls whi on bla" after
  3224. setlocal. This will be reset to its normal value after completion of the
  3225. batch,
  3226. and will allow the screen clearing commands in the batch to work properly.
  3227.  
  3228.                                        Enjoy,
  3229.  
  3230.                                           .\\ark \\'atkins
  3231.  
  3232. ... J'suis le Grand Zombie!
  3233. --- Blue Wave/TG v2.05
  3234.  * Origin: ModemLink BBS =: Yukon, OK := HST/V32 (1:147/24.0)
  3235. )
  3236.  
  3237. ------------------------------------------------------------------------
  3238.  
  3239. Echo Flag :         Permanent: N       Export: N      Personal Read: Y
  3240.  
  3241.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/19/1992
  3242.   To: JEAN-CHRISTIAN AUCLAIR          Num: 1711       Date:  2/11/1992
  3243. From: HENK SIMMELINK                   Re:            Time:  7:43 pm
  3244. Subj: VIEW/DESCRIBE                  Prvt: N          Read: N
  3245.  
  3246. Hello Jean-christian!
  3247.  
  3248. In a message to All Jean-christian Auclair writes on 07 Feb 92:
  3249.  
  3250.  JA> I'd like to SELECT files that I can view (with an external viewer
  3251.  JA> program) and then DESCRIBE, one by one. Is there a simple way to do
  3252.  JA> this using the 4DOS btm commands? Thanks. JC.
  3253.  
  3254. Try this:
  3255. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
  3256. setlocal
  3257. set ttemp=%@unique[%temp]
  3258. dir /b>%ttemp
  3259. :loop
  3260.     describe %@select[%ttemp,0,10,24,70, Select file to describe:]
  3261.     inkey Would you like to describe another one? %%tttemp
  3262. iff %@ascii[%tttemp] ne 32 then
  3263.     quit
  3264.     del  /q %ttemp
  3265. else
  3266.     goto loop
  3267. endiff
  3268. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
  3269.                 Yours sincerely,
  3270.                       Henk Simmelink
  3271.  
  3272.  
  3273. --- GEcho/beta
  3274.  * Origin: Hup hub, hup hub, hup hub, hup hub Albert! (2:283/4.6)
  3275.  
  3276. ------------------------------------------------------------------------
  3277.  
  3278. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  3279.  
  3280.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/22/1992
  3281.   To: HEINZ SONNENWALD                Num: 494        Date:  2/19/1992
  3282. From: MAYNARD HOGG                     Re:            Time: 12:29 pm
  3283. Subj: Double Commands In Hn          Prvt: N          Read: N
  3284.  
  3285. In a msg of <15 Feb 92>, Maynard Hogg writes to Heinz Sonnenwald:
  3286.  >> history |tolower |sort |uniq >%tmpfile
  3287.              -------        ----
  3288. HS>I think these are external programs. But I need help with
  3289.   >4dos commands. I haven't these programs.
  3290.  
  3291. Tolower is optional. If you never use upper case command lines, that
  3292. part of the pipe is redundant.
  3293.  
  3294. Uniq is the UNIX program for eliminating duplicate lines. (Some SORT
  3295. implementations have it built in.) Without it, you are reduced to
  3296. manually editing the temporary file.
  3297.  
  3298. Here's a DEBUG script for making TOLOWER.COM.
  3299.  
  3300. (Note: Jean Hart has ruled that discussion of methods for making such
  3301. scripts off topic, so don't ask me how I did it.)
  3302.  
  3303. NTOLOWER.COM
  3304. E 100 E9 97 00 08 08 08 40 28 23 29 54 4F 4C 4F 57 45
  3305. E 110 52 20 20 3D 20 53 68 69 66 74 73 20 6F 75 74 70
  3306. E 120 75 74 20 74 6F 20 6C 6F 77 65 72 20 63 61 73 65
  3307. E 130 20 4D 61 79 6E 61 72 64 20 48 6F 67 67 20 28 32
  3308. E 140 2F 36 2F 31 39 38 39 29 0D 0A 09 55 73 61 67 65
  3309. E 150 3A 20 54 4F 4C 4F 57 45 52 20 20 3C 69 6E 66 69
  3310. E 160 6C 65 20 3E 6F 75 74 66 69 6C 65 0D 0A 52 65 74
  3311. E 170 75 72 6E 73 20 45 52 52 4F 52 4C 45 56 45 4C 20
  3312. E 180 3C 3E 30 20 69 66 20 73 6F 6D 65 74 68 69 6E 67
  3313. E 190 20 77 72 6F 6E 67 0D 0A 24 1A BC E5 12 0E 07 BB
  3314. E 1A0 E5 12 83 C3 0F B1 04 D3 EB B4 4A CD 21 BA E5 01
  3315. E 1B0 B9 00 10 BB 00 00 B4 3F CD 21 72 25 8B C8 E3 21
  3316. E 1C0 51 BE E5 01 8B FE AC 3C 41 72 06 3C 5A 77 02 04
  3317. E 1D0 20 AA E2 F2 59 BA E5 01 BB 01 00 B4 40 CD 21 73
  3318. E 1E0 CC B4 4C CD 21
  3319. RCX
  3320. E5
  3321. W
  3322. Q
  3323. ;DEBUG script to make TOLOWER.COM
  3324. ;Usage: debug <tolower.scr
  3325.  
  3326. (Note: Jean Hart has ruled that discussion of methods for making such
  3327. scripts off topic, so don't ask me how I did it.)
  3328. --- 
  3329.  * Origin: IMS-NET #1 Tokyo,Japan (6:730/6)
  3330.  
  3331. ------------------------------------------------------------------------
  3332.  
  3333. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  3334.  
  3335.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/22/1992
  3336.   To: PETER WADSWORTH                 Num: 464        Date:  2/15/1992
  3337. From: MIKE ARST                        Re:            Time:  9:44 pm
  3338. Subj: Speaking of...                 Prvt: N          Read: N
  3339.  
  3340. Speaking of 4DOS and FGREP, I tried out something that turned out
  3341. to work pretty well:
  3342.  
  3343. :: the following two lines should be on a SINGLE line
  3344.  
  3345. fgrep -sx MENS_ISSUES G:\btmtemp\temptemp |
  3346. echo %@eval[%@lines[con]+1] | input %%nbr
  3347.  
  3348. The idea was, run FGREP on a temp file made by extracting a .PKT
  3349. file, then search for a specific area-tag name with FGREP. Ok,
  3350. that prints the lines containing the string. Now, how many lines
  3351. were there? Pipe the result to the LINES function, using "con" as
  3352. the "file name." I didn't know if it would work - but it worked!
  3353.  
  3354. < One alternative would have been to pipe to SED, thus:
  3355.  
  3356.   | sed -n $= | input %%nbr
  3357.  
  3358. ... but it was somewhat slow that way.>
  3359.  
  3360. Back to the method actually used: Then use EVAL to add 1 to the
  3361. result, because the 4DOS-style result is zero-based - I want to
  3362. know the REAL number of lines. Finally, pipe the output to the NBR
  3363. variable via INPUT. The variable now contains only the number of
  3364. lines containing the string. A "count number of lines containing
  3365. target string" function is not in the feature set of the version
  3366. of FGREP that I have here. Then:
  3367.  
  3368. iff %nbr% == 0 then
  3369.  
  3370. (and so on)
  3371.  
  3372. Since I wrote that I got a faster computer, making McCormick's
  3373. GREP (rather slow) more palatable. It DOES have a "number of
  3374. occurrences" [number of lines] function:
  3375.  
  3376. grep -c MENS_ISSUES G:\btmtemp\temptemp | input %%nbr
  3377.  
  3378. But when I was using only the slower computer, that ability to
  3379. use LINES and "con" was a real plus. <<Another small cheer for
  3380. 4DOS' variable functions.>>
  3381.  
  3382. --- ME2
  3383.  * Origin: SeaSoft (206.637-2398) (Fidonet 1:343/8.9)
  3384.  
  3385. ------------------------------------------------------------------------
  3386.  
  3387. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  3388.  
  3389.  BBS: ASTRIX          Conference: 4DOS            Imported:  2/23/1992
  3390.   To: PAUL CONANT                     Num: 11527      Date:  2/21/1992
  3391. From: DAVID KUNZ                       Re: 0          Time:  3:51 pm
  3392. Subj: GREAT SERVICE                  Prvt: N          Read: N
  3393.  
  3394. PC║ Place my order for 4DOS 4.0 on Tuesday and it arrived on Thursday.
  3395. PC║ Couldn't ask for speedier service.  Any body got any great ALIASes
  3396. PC║ to try out?
  3397.  
  3398. Here're a few to play with (note that <at> is the "at" symbol; i.e,
  3399. "a" with a circle around it, shift 2):
  3400.  
  3401. List your aliases
  3402. ??=alias|list/s
  3403.  
  3404. directory of directories
  3405. DDIR=dir /a:d
  3406.  
  3407. Select files to pass to command from select
  3408. DO=select %1 (*.*) %2&
  3409.  
  3410. Select files to zip from select
  3411. DOZIP=iff "%1"=="" then echo Usage: DOZIP ZIPNAME^else if exist $temp$$$.tmp
  3412.     del $temp$$$.tmp^select dir/f/b (*.*) >>$temp$$$.tmp^pkzip -am %1
  3413.     <at>$temp$$$.tmp^ del $temp$$$.tmp^endiff
  3414.  
  3415. Edit and reload your aliases
  3416. EDALIAS=ed d:\alias.dat^alias /r d:\alias.dat
  3417.  
  3418. Show dir in list
  3419. LDIR=dir %1&|list/s
  3420.  
  3421. Make and change to a directory
  3422. MCD=md %1^cd %1
  3423.  
  3424. "Zap" all files in every directory that match %1 (use with caution!)
  3425. ZAP=pushd \^global /iq if exist %1 for %%FF in (%1) del %%FF^popd
  3426.  
  3427. Have Fun!
  3428. David Kunz
  3429. ---
  3430.  ■ MegaMail 2.10 #0·I support *MERIT PAY* for Politicians.
  3431.  
  3432. PCRelay:WTHREEJP -> #75 RelayNet (tm)
  3433.                                                                                                
  3434. PCRelay:DCINFO -> #16 MetroLink (tm) International Network
  3435. 4.10              DC Info Exchange MetroLink International Hub
  3436.      
  3437.  
  3438. ------------------------------------------------------------------------
  3439.  
  3440. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  3441.  
  3442.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/23/1992
  3443.   To: BOB JONES                       Num: 506        Date:  2/18/1992
  3444. From: PERTTI HEIKKINEN                 Re:            Time:  5:25 pm
  3445. Subj: File Description               Prvt: N          Read: N
  3446.  
  3447.  > Is there any way to attach the file
  3448.  > description that appears on a BBS 
  3449.  > Download Directory to the File being 
  3450.  > downloaded AT THE TIME IT IS DOWNLOADED? 
  3451.  
  3452. After the user logged out, there is. I don't know how to do it before
  3453. (except if you want to risk hanging your system with a spawned btm while a
  3454. caller is in, it is |B=). 
  3455. The template would be something like:
  3456.  
  3457. pushd d:\download
  3458. setlocal
  3459. set li=0
  3460. :loop
  3461.    set st=%@line[files.bbs,%li]
  3462.    if "%st"=="**EOF**" goto done
  3463.    if exist %@word[%st,0] describe %@word[%st,0] "%@substr[%s,13,80]"
  3464.    REM change the '13' above to fit your format
  3465.    set li=%@eval[1+%li]
  3466.    goto loop
  3467. :done
  3468. endlocal
  3469. popd
  3470.  
  3471. You may have to use some more %@substr[]'s to sophisticate this, but for a
  3472. reference... ;-)
  3473.  
  3474.         PjH 8-)
  3475.  
  3476. --- OPMED 3.00
  3477.  * Origin: The Yellow Cab (2:220/851)
  3478. 
  3479. ------------------------------------------------------------------------
  3480.  
  3481. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  3482.  
  3483.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/24/1992
  3484.   To: ALL                             Num: 539        Date:  2/21/1992
  3485. From: SAUL LEVY                        Re:            Time:  2:20 pm
  3486. Subj: HISTCOMP.BAS                   Prvt: N          Read: N
  3487.  
  3488. All,
  3489.  
  3490. Since there is so much interest in saving the history buffer's 
  3491. commands for reloading I've written a version in QuickBASIC which 
  3492. is at the end of this message.  You'll have to find someone with 
  3493. a copy of QB 4.0 or later who knows how to use it!  Be sure to 
  3494. read the REMarks at the beginning of the program listing.  Note 
  3495. the limitation that only up to 500 unique history commands can be 
  3496. saved (extras will be ignored!).
  3497.  
  3498. This version uses no sorting, so all commands remain in the same 
  3499. order as you entered them (capitalization is also maintained and 
  3500. may show up as duplicated commands).  Otherwise, only unique 
  3501. commands are saved in HIST.TXT which should be reloaded every 
  3502. time you need it.  Redirection is also maintained without 
  3503. creating 0 byte files!
  3504.  
  3505. This program is a bit slow.  Shelling out to save the history 
  3506. takes some time, and the longer your history is, the longer it 
  3507. will take to find the unique commands and discard the duplicates.  
  3508. I could supply a faster, file-reading version using the BASIC 
  3509. Wizard library, but most of you won't have it.  If this is a 
  3510. problem, send me a diskette for a copy!
  3511.  
  3512. Saul
  3513.  
  3514.  
  3515. REM Program HISTCOMP.BAS, a history compression program for 4DOS
  3516.  
  3517. REM Written by Saul G. Levy, Tucson, Arizona, February 10-11, 1992
  3518. REM Last changed February 20, 1992
  3519.  
  3520. REM Save the unique 4DOS history commands from a temporary file (HIST.$$$) to
  3521. REM HIST.TXT for reloading later on.  Compile with QuickBASIC 4.x with the
  3522. /AH
  3523. REM switch to be sure enough memory is set aside for the TEXT$ array
  3524.  
  3525. REM Put the following two commands (within the quote marks) into your
  3526. REM AUTOEXEC.BAT file to replace the current history file with the unique
  3527. REM history commands in the NEW HIST.TXT file:
  3528.  
  3529. REM "HISTORY /F"              [Note:  You must delete the old history first]
  3530. REM "HISTORY /R HIST.TXT"     [or it will be ADDED instead of being
  3531. replaced!]
  3532.  
  3533. REM Then run HISTCOMP.BAS whenever you wish to save the current history file
  3534. REM (before turning off your computer!)
  3535.  
  3536. REM Note no sorting of the history commands is done so the original order is
  3537. REM maintained along with all of the redirection commands
  3538.  
  3539.     DIM TEXT$(500): REM Holds up to 500 unique history commands, if changed
  3540. be
  3541.                     REM sure to change all SEVEN references to the number
  3542. 500!
  3543.  
  3544. REM Program name
  3545.     CLS
  3546.     PRINT "HISTCOMP.BAS, save unique history commands in HIST.TXT"
  3547.     PRINT
  3548.     PRINT "Working..."
  3549.  
  3550. REM Create temporary input file of current history commands
  3551.     SHELL "HISTORY >HIST.$$$"
  3552.  
  3553. REM Open files
  3554.     OPEN "I", 1, "HIST.$$$"
  3555.     OPEN "O", 2, "HIST.TXT"
  3556.     TEXT$ = "": REM Current history command read from input file
  3557.     N = 0: REM Number of unique history commands
  3558.  
  3559. Again:
  3560.     LINE INPUT #1, TEXT$: REM Read a history command
  3561.     IF EOF(1) THEN GOTO Finish: REM End-Of-File mark?
  3562.     IF LEN(TEXT$) = 0 THEN GOTO Again: REM Anything there?
  3563.     IF N = 0 THEN GOTO Store: REM Store new history command in array
  3564.  
  3565. Check:
  3566.     FOR I = 1 TO N: REM Find any previous occurances of this history command
  3567.     IF TEXT$ = TEXT$(I) THEN GOTO Again
  3568.     NEXT I
  3569.  
  3570. Store:
  3571.     N = N + 1: REM Found a new history command, store it
  3572.     IF N > 500 THEN N = 500: GOTO Oops
  3573.     TEXT$(N) = TEXT$
  3574.     GOTO Again: REM Read next history command
  3575.  
  3576. Oops:
  3577.     PRINT "The history file contains too many unique commands!"
  3578.     PRINT "Saving the first 500 unique history commands..."
  3579.  
  3580. Finish:
  3581.     FOR I = 1 TO N: REM Save up to 500 unique history commands in output file
  3582.     PRINT #2, TEXT$(I)
  3583.     NEXT I
  3584.     PRINT "There were"; N; "unique history commands"
  3585.     CLOSE : REM Close files
  3586.     KILL "HIST.$$$": REM Delete temporary input file
  3587.     PRINT "Finished normally": REM Let user know everything is O.K.
  3588.     END
  3589. ---
  3590.  * Origin: Old Pueblo BBS - Tucson Computer Society (1:300/2)
  3591.  
  3592. ------------------------------------------------------------------------
  3593.  
  3594. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  3595.  
  3596.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/25/1992
  3597.   To: DAVID POWERS                    Num: 550        Date:  2/22/1992
  3598. From: DAYTON LIVINGSTON                Re:            Time:  6:52 pm
  3599. Subj: Zdir                           Prvt: N          Read: N
  3600.  
  3601. DP>  cls
  3602. DP>  setlocal
  3603. DP>  unalias dir
  3604. DP>   dir/ku %& >&>nul |set _lin=%@substr["%@line[con,0]",23,9]
  3605. DP>   iff %@index["%_files", ] == -1 then
  3606. >>>>>>>>>>>>>>>>>>> ^^^^^^ Should be "%_LIN"
  3607. DP>     echo There are a million or more files in this directory.
  3608. DP>     echo Time for a new subdirectory.  Quitting.
  3609. DP>     quit
  3610. DP>   endiff
  3611. DP>   set _files=%@eval[%@substr["%_files",1,%@index["%_files", ]]]
  3612. >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ^^^^^^^             ^^^^^^^
  3613. >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Should be "%_LIN"
  3614. DP>   iff %_files LE 17 then
  3615. DP>     dir %&
  3616. DP>   elseiff %_files LE 34 then
  3617. DP>     dir /2v %&
  3618. DP>   elseiff %_files LE 68 then
  3619. DP>     dir /4v %&
  3620. DP>   else dir /wvp %&
  3621. DP>  endiff
  3622.  
  3623. DP>Thanks for the idea!  A simpler version of the above, but a little
  3624. DP>slower, would be to do all the @functions as one line,
  3625.  
  3626. DP>   dir %& |set _files=%@lines[con]
  3627.  
  3628. DP>The numbers above would want to be increased (17 to 23 or so, that kind
  3629. DP>of thing), though.  ttyl.
  3630.  
  3631. Great idea, and your version is MUCH faster.  Just the above noted
  3632. corrections for anyone who didn't figure it out for themselves.
  3633.  
  3634. --- D'Bridge 1.30/071141
  3635.  * Origin: Animal Pharm BBS, Holbrook AZ. 602-524-2032 HST DS (1:304/100)
  3636.  
  3637. ------------------------------------------------------------------------
  3638.  
  3639. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  3640.  
  3641.  BBS: ASTRIX          Conference: 4DOS            Imported:  2/26/1992
  3642.   To: PAUL CONANT                     Num: 11580      Date:  2/23/1992
  3643. From: JAY HANNA                        Re: 0          Time:  6:42 pm
  3644. Subj: GREAT SERVICE                  Prvt: N          Read: N
  3645.  
  3646. PC>Place my order for 4DOS 4.0 on Tuesday and it arrived on Thursday.
  3647. PC>Couldn't ask for speedier service.
  3648.  
  3649. I suppose it's a good idea to wait for three months after the realease, and
  3650. be fortunate enough to live across the street <g>
  3651.  
  3652. Here's a couple of handy aliases I use:
  3653.  
  3654. a=c:\4dos\4help -ascii-         This calls the 4dos ascii chart
  3655. al=cd\4dos^alias /r alias.lst   This will re-read your alias.lst
  3656. ff=echo f > prn^cls            This will send a form-feed to your printer
  3657. uz=pkunzip -d-$ %1 %2 %3        Unzips with options I need.
  3658. zip=pkzip  %1 %2 %3 %4          Zips & leaves room for lots of options.
  3659.  
  3660.  
  3661.  
  3662.  
  3663. ⌡Æy
  3664. ---
  3665.  ■ SLMR 2.1 ■ Nothing is so smiple that it can't get screwed up.
  3666.  
  3667. PCRelay:ZED -> #200 RelayNet (tm)
  3668.                                          
  3669.  
  3670. ------------------------------------------------------------------------
  3671.  
  3672. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  3673.  
  3674.  BBS: ESCMAIL         Conference: 4DOS(echo)      Imported:  2/27/1992
  3675.   To: PERTTI HEIKKINEN                Num: 576        Date:  2/23/1992
  3676. From: TED HARPER                       Re:            Time: 12:09 pm
  3677. Subj: File Description               Prvt: N          Read: N
  3678.  
  3679.  >> Is there any way to attach the file description that appears on a BBS
  3680.  >> Download Directory to the File being downloaded...
  3681.  
  3682. I tinkered with your code, and found that if the description of a file in
  3683. files.bbs includes a ">", then the following word will be created as a file,
  3684. and the words before and after the ">" in the files.bbs will together become
  3685. the description. In other words :-
  3686.  
  3687. TS2RAE10.ARJ [00] Tosscan --> Ra-Echo Converter 1.0 (by U. Bartelt)
  3688.  
  3689. is processed to produce the description :-
  3690.  
  3691. ts2rae10.arj     5393  11-02-92  12:42 Tosscan -- Converter 1.0 (by U.
  3692. Bartelt)
  3693.  
  3694. and creates (as a side-effect) a zero-length file called RA-ECHO in the same
  3695. directory. This is odd, as I am enclosing the argument to "describe" in
  3696. quotes, and thought that redirection would be turned off inside there <sigh>.
  3697.  
  3698. Thanks for the neat code too (BTW, the syntax for %@word is %@word[0,%st%]
  3699. rather than the other way round - at least in the southern hemisphere<grin>).
  3700.  
  3701. FWIW, here is the (very slightly) altered code :-
  3702.  
  3703. pushd %1
  3704. setlocal
  3705. set li=0
  3706. :loop
  3707.    set st=%@line[files.bbs,%li%]
  3708.    if "%st%"=="**EOF**" goto done
  3709.    iff exist %@word[0,%st%] then
  3710.       rem alter the "18" below to suit your FILES.BBS format
  3711.       describe %@word[0,%st%] "%@substr[%st%,18]"
  3712.    endiff
  3713.    set li=%@eval[1+%li%]
  3714.    goto loop
  3715. :done
  3716. endlocal
  3717. popd
  3718.  
  3719.  
  3720. ted.h.
  3721.  
  3722. ---
  3723.  * Origin: Ted's Skiing Substitute, Sydney Australia (3:712/211.4)
  3724.  
  3725. ------------------------------------------------------------------------
  3726.  
  3727. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  3728.  
  3729.  BBS: ASTRIX          Conference: 4DOS            Imported:  2/28/1992
  3730.   To: ALL                             Num: 11596      Date:  2/25/1992
  3731. From: MARK WATKINS                     Re: 0          Time:  6:01 am
  3732. Subj: PAKEM.BTM 1/2                  Prvt: N          Read: N
  3733.  
  3734.  
  3735.  
  3736.  
  3737.    Here's a batchfile I wrote that attempts to fill a floppy to its
  3738. maximum capacity. I am posting it to get your feedback as to how well
  3739. you feel it does or doesn't work, and how you think it could be made to
  3740. work better or more efficiently. I've attempted to write it in such a
  3741. way as to work on any system running 4DOS 4.0 or higher. One thing the
  3742. user would have to do is edit the formatting routine if their system
  3743. differed from one having a 1.2M A:drive and a 1.44M B:drive, otherwise
  3744. I think it should work just about anywhere.
  3745.  
  3746.                                     Thanks,
  3747.  
  3748.                                       .\\ark
  3749.  
  3750. :::::::::::::::::::::::::::::::: Pakem.btm :::::::::::::::::::::::::::
  3751. :
  3752. :  Requires: 4DOS 4.xx. Color monitor preferred.
  3753. :  Syntax:
  3754. :     Pakem [?] [*.ext];[file];[file]...
  3755. :     Select pakem [filespec] - Must use square brackets so all
  3756. :                               files will be processed at one time.
  3757. :                               Files will be processed in order of
  3758. :                               selection rather than by size.
  3759. :
  3760. :     This batchfile will copy or move the specified files to drive
  3761. :     A: or B:. It will start with the largest file in the current
  3762. :     directory that will fit on the floppy and proceed in descending
  3763. :     order until all files are processed or the user aborts.
  3764. :     Directories pointed to by the TMP or TEMP environmental vari-
  3765. :     ables are used to build the temporary files containing the lists
  3766. :     of files being processed.
  3767. :
  3768. ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  3769. swapping off
  3770. setlocal
  3771. if "%temp" == "" set temp=%_cwds
  3772. set tmp=%temp
  3773. set List_1=%temp%pakem1.tmp
  3774. set List_2=%temp%pakem2.tmp
  3775. alias cls *cls whi on bla
  3776. alias Process_Files `%action %file %target`
  3777.  
  3778. cls
  3779. if "%1" == "?" goto help
  3780.  
  3781.  
  3782. :---------------------------------------------------------------------
  3783.  
  3784. drawhline 0 0 79 2 bla on bla
  3785. drawbox  8 26 12 52 2 gre on bla fill bla
  3786.  
  3787. scrput 10 28 whi on bla      [C]opy or [M]ove files?
  3788. scrput 15 33 whi on bla           Enter choice:
  3789.  
  3790. inkey /k"cm" %%action
  3791.  
  3792. if "%action" == "c" set action=copy/r
  3793. if "%action" == "m" set action=move/r
  3794.  
  3795.  
  3796. :---------------------------------------------------------------------
  3797.  
  3798. cls
  3799. drawhline 0 0 79 2 bla on bla
  3800. drawbox  8 26 12 52 2 blu on bla fill bla
  3801.  
  3802. scrput 9 30 whi on bla       Enter target drive:
  3803. scrput 11 36 whi on bla           A or B
  3804. scrput 15 33 whi on bla        Enter choice:
  3805.  
  3806. inkey /k"ab" %%target
  3807.  
  3808. if "%target" == "a" set target=a:
  3809. if "%target" == "b" set target=b:
  3810.  
  3811.  
  3812. :---------------------------------------------------------------------
  3813. :pick
  3814.  
  3815.   *cls bla on blu bor mag
  3816.   drawhline 0 0 79 2 blu on blu
  3817.   drawbox  6 19 14 59 2 bri whi on mag fill bla sha
  3818.  
  3819.   scrput 8 22 whi on bla        [C] Insert [next] disk and Continue
  3820.   scrput 9 22 whi on bla        [D] Directory of target disk
  3821.   scrput 10 22 whi on bla       [S] Select files to delete (target)
  3822.   scrput 11 22 red on bla       [ ] Format target
  3823.   scrput 11 23 bri yel on bla    !
  3824.   scrput 12 22 whi on bla       [Q] Quit
  3825.   scrput 17 33 bri whi on blu           Enter choice:
  3826.  
  3827.   inkey /k"qcds!" %%pick
  3828.  
  3829.   if "%pick" == "q" (
  3830.     cls bor bla
  3831.     scrput 0 0 bri whi on red .Aborted at user request.
  3832.     if exist %List_2 (
  3833. <<MESSAGE TOO LONG -- SOME LINES WERE DELETED>>
  3834.                                     
  3835. PCRelay:DCINFO -> #16 MetroLink (tm) International Network
  3836. 4.10              DC Info Exchange MetroLink International Hub
  3837.      
  3838.  
  3839. ------------------------------------------------------------------------
  3840.  
  3841. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  3842.  
  3843.  BBS: ASTRIX          Conference: 4DOS            Imported:  2/28/1992
  3844.   To: ALL                             Num: 11597      Date:  2/25/1992
  3845. From: MARK WATKINS                     Re: 0          Time:  6:05 am
  3846. Subj: PAKEM.BTM 2/2                  Prvt: N          Read: N
  3847.  
  3848.  
  3849. H
  3850. :---------------------------------------------------------------------
  3851. :Loop
  3852.  
  3853. cls bor blu
  3854.  
  3855. if exist %List_2 move/q %List_2 %List_1
  3856.  
  3857. if not exist %List_1 *dir /b /a:-d-h-s /o:sr %& > %temp%pakem1.tmp
  3858.  
  3859. For %%file in (@%List_1) do (
  3860.   iff %@filesize[%file,b] LT %@diskfree[%target,b] then
  3861.     Process_Files
  3862.    else
  3863.     (
  3864.     echo Skipping file - %file
  3865.     echo %file >> %temp%pakem2.tmp
  3866.     )
  3867.   endiff
  3868.   )
  3869.  
  3870. Iff exist %List_2 then
  3871.   goto pick
  3872.  else
  3873.   (
  3874.   cls bor bla
  3875.   scrput 0 0 bla on gre .All files successfully processed.
  3876.   goto end
  3877.   )
  3878. endiff
  3879.  
  3880.  
  3881. :---------------------------------------------------------------------
  3882. :Format
  3883.  
  3884. drawhline 0 0 79 2 bla on bla
  3885. drawbox  7 26 14 52 2 bri whi on red fill bla
  3886.  
  3887. scrput 9 30 whi on bla       Format target at:
  3888. scrput 11 30 whi on bla      [H] High density
  3889. scrput 12 30 whi on bla      [D] Double density
  3890. scrput 16 33 whi on bla        Enter choice:
  3891.  
  3892. inkey /k"hd" %%format
  3893.  
  3894. cls bor blu
  3895.  
  3896. Iff "%format" == "d" then (
  3897.   if "%target" == "a:" call format a: /4
  3898.   if "%target" == "b:" call format b: /n:9 /t:80
  3899.   )
  3900. else
  3901.   (
  3902.   call format %target
  3903.   )
  3904. endiff
  3905.  
  3906. return
  3907.  
  3908.  
  3909. :---------------------------------------------------------------------
  3910. :sub1
  3911.  
  3912.   if %@lines[%List_2] GT 14 (
  3913.   pause Press a key for a list of files not processed...
  3914.   )
  3915.   return
  3916.  
  3917.  
  3918. :---------------------------------------------------------------------
  3919. :Help
  3920.  
  3921. cls
  3922. text
  3923.  
  3924. Syntax: Pakem [?] [file1];[file2]...etc.
  3925.  
  3926. Pakem ? produces this screen.
  3927. Pakem by itself operates on all files in current directory.
  3928. Pakem [file1];[file2]...etc. operates on specified files in the curren
  3929.       drive and directory, ie:
  3930.  
  3931.                   Pakem *.zip;*.arj;*.lha
  3932.                   Pakem program.txt;p*.doc;*.lst
  3933.  
  3934. Select pakem [filespec] - Must use square brackets so all
  3935.                           files will be processed at one time.
  3936.                           Files will be processed in order of
  3937.                           selection rather than by size. Total
  3938.                           of files selected must not exceed 127
  3939.                           characters on the command line.
  3940.  
  3941. endtext
  3942.  
  3943.  
  3944. :---------------------------------------------------------------------
  3945. :end
  3946.  
  3947. <<MESSAGE TOO LONG -- SOME LINES WERE DELETED>>
  3948.                                                                                                     
  3949. PCRelay:DCINFO -> #16 MetroLink (tm) International Network
  3950. 4.10              DC Info Exchange MetroLink International Hub
  3951.      
  3952.  
  3953. ------------------------------------------------------------------------
  3954.  
  3955. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  3956.  
  3957.  BBS: ASTRIX          Conference: 4DOS            Imported:  3/01/1992
  3958.   To: YOU                             Num: 11645      Date:  2/28/1992
  3959. From: GREG VAIDMAN                     Re: 0          Time: 12:09 pm
  3960. Subj: can 4dos handle big path?      Prvt: N          Read: N
  3961.  
  3962. ╓────────┤ on 02-21-92 (19:03), marshall mccombie said to doug park ├────────╖
  3963. ║ SET oldpath=%PATH                                                          ║
  3964. ║ PATH=< directory you wish was in the path >;%oldpath                       ║
  3965. ║ ...                                                                        ║
  3966. ║ ...        <--- Run your program here                                      ║
  3967. ║ ...                                                                        ║
  3968. ║ SET PATH=%oldpath                                                          ║
  3969. ╙────────┤ and greg vaidman replied on wed, 02-26-1992 at 00:33... ├─────────╜
  3970.  
  3971.     you could just use a setlocal to save the entire environment
  3972.     without having to save a copy of the path.  for example:
  3973.   ╓──
  3974.   ║ @echo off
  3975.   ║ setlocal
  3976.   ║ path=c:\dumb\program\needs\to\be\in\path;%path
  3977.   ║ runme
  3978.   ╙──
  3979.     this batch will restore the path to its "pre-batch" state when
  3980.     it finishes.  uses less environment space by not having two
  3981.     copies of the path in the environment at once.
  3982.  
  3983.                                                                 OΓεO Vαîδµα∩
  3984.                                                                 ⌡  ⌡
  3985. ---
  3986.  ■ OLX 2.1 ■ James Brown: "I've Fallen And I Can't Get Down"
  3987.  
  3988. PCRelay:DATABASE -> #1251 RelayNet (tm)
  3989.                                                                                                                   
  3990. PCRelay:DCINFO -> #16 MetroLink (tm) International Network
  3991. 4.10              DC Info Exchange MetroLink International Hub
  3992.      
  3993.       To:  ALL                        Message #:  7992           Thread> 9718
  3994.     From:  Yousuf Khan                Submitted:  27 Feb 92 16:40:00  
  3995.  Subject:  Disabling Kstack.com          Status:  Public
  3996. Received:  No                             Group:  4DOS (89)
  3997.  
  3998. This solution has been staring me in the face. If the performance
  3999. drop when Kstack is loaded under Desqview is driving you nuts, and
  4000. you have one of the TSRCOM packages available (ie. Mapmem, Mark,
  4001. Release, Watch, etc.), then try these aliases:
  4002.  
  4003. kstack='iff %_dv eq 1 then^watch>nul^*kstack /i %&^disable kstack
  4004.         >nul^else^*kstack %&^endiff'
  4005.  
  4006. keystack='iff %_dv eq 1 then^disable kstack /a >nul^*keystack %&^
  4007.         disable kstack >nul^else^*keystack^endiff'
  4008.  
  4009. They just detect for DV and if you're running under it, these
  4010. aliases then turn off Kstack.com so that it doesn't take hook into
  4011. Int 16h (the timer interrupt), until needed.
  4012.  
  4013. Note, I haven't really tested it, I just wrote it up on the spot.
  4014. I'm sure you can find modifications to these aliases to fit your
  4015. situation better, or if there's a bug in them.
  4016.  
  4017.                                                 Yousuf Khan
  4018.  
  4019. --- ME & ME2
  4020.  * Origin: On the path to Ottawa (1:163/215.6)
  4021. =-=-=-=-=
  4022.       To:  Yousuf Khan                Message #:  9718     7992 <Thread
  4023.     From:  Yousuf Khan                Submitted:  27 Feb 92 19:57:00  
  4024.  Subject:  Disabling Kstack.com          Status:  Public
  4025. Received:  No                             Group:  4DOS (89)
  4026.  
  4027.  In a message of 27-Feb-92, Yousuf Khan of <1:163/215.6> wrote:
  4028.  
  4029.  YK> keystack='iff %_dv eq 1 then^disable kstack /a >nul^*keystack %&^
  4030.  YK> disable kstack >nul^else^*keystack^endiff'
  4031.  
  4032. Sorry folks, it seems that if you disable kstack immediately after
  4033. sending characters to it, it will not send out the characters you
  4034. sent to it. So you cannot disable the Kstack.com immediately after
  4035. sending characters to it. You could however disable Kstack much
  4036. later.
  4037.  
  4038. keystack='iff %_dv eq 1 then^disable kstack /a>nul^*keystack %&^
  4039.         else^*keystack %&^endiff
  4040.  
  4041. then later,
  4042.  
  4043. dkstack='iff %_dv eq 1 then^disable kstack>nul^endiff'
  4044.  
  4045. However, after having tried these aliases, disabling Kstack
  4046. doesn't seem to have noticeably improved the performance under DV,
  4047. sorry.  The suggestion that Kstack.com be reprogrammed to unhook
  4048. Int 1ch when timing is not in use, doesn't seem like it would
  4049. work. A special DV function call may have to be used.
  4050.  
  4051.                                                 Yousuf Khan
  4052.  
  4053. --- ME & ME2
  4054.  * Origin: On the path to Ottawa (1:163/215.6)
  4055. =-=-=-=-=
  4056.       To:  Pertti Heikkinen           Message #:  3879     1506 <Thread
  4057.     From:  Ted Harper                 Submitted:  23 Feb 92 12:09:00  
  4058.  Subject:  File Description              Status:  Public
  4059. Received:  No                             Group:  4DOS (89)
  4060.  
  4061. MSGID: 3:712/211.4@fidonet 1b0b7c01
  4062. PID: FM 2.02
  4063.  >> Is there any way to attach the file description that appears on a BBS
  4064.  >> Download Directory to the File being downloaded...
  4065.  
  4066. I tinkered with your code, and found that if the description of a
  4067. file in files.bbs includes a ">", then the following word will be
  4068. created as a file, and the words before and after the ">" in the
  4069. files.bbs will together become the description. In other words :-
  4070.  
  4071. TS2RAE10.ARJ [00] Tosscan --> Ra-Echo Converter 1.0 (by U. Bartelt)
  4072.  
  4073. is processed to produce the description :-
  4074.  
  4075. ts2rae10.arj     5393  11-02-92  12:42 Tosscan -- Converter 1.0 (by U. Bartelt)
  4076.  
  4077. and creates (as a side-effect) a zero-length file called RA-ECHO
  4078. in the same directory. This is odd, as I am enclosing the
  4079. argument to "describe" in quotes, and thought that redirection
  4080. would be turned off inside there <sigh>.
  4081.  
  4082. Thanks for the neat code too (BTW, the syntax for %@word is
  4083. %@word[0,%st%] rather than the other way round - at least in the
  4084. southern hemisphere<grin>).
  4085.  
  4086. FWIW, here is the (very slightly) altered code :-
  4087.  
  4088. pushd %1
  4089. setlocal
  4090. set li=0
  4091. :loop
  4092.    set st=%@line[files.bbs,%li%]
  4093.    if "%st%"=="**EOF**" goto done
  4094.    iff exist %@word[0,%st%] then
  4095.       rem alter the "18" below to suit your FILES.BBS format
  4096.       describe %@word[0,%st%] "%@substr[%st%,18]"
  4097.    endiff
  4098.    set li=%@eval[1+%li%]
  4099.    goto loop
  4100. :done
  4101. endlocal
  4102. popd
  4103.  
  4104.  
  4105. ted.h.
  4106.  
  4107. ---
  4108.  * Origin: Ted's Skiing Substitute, Sydney Australia (3:712/211.4)
  4109. =-=-=-=-=
  4110.       To:  All                        Message #:  2326 
  4111.     From:  Saul Levy                  Submitted:  21 Feb 92 14:20:00  
  4112.  Subject:  HISTCOMP.BAS                  Status:  Public
  4113. Received:  No                             Group:  4DOS (89)
  4114.  
  4115. PID: QE 2.75 b14 & RA 1.11 79122
  4116. MSGID: 1:300/2 4f43a832
  4117. All,
  4118.  
  4119. Since there is so much interest in saving the history buffer's 
  4120. commands for reloading I've written a version in QuickBASIC which 
  4121. is at the end of this message.  You'll have to find someone with 
  4122. a copy of QB 4.0 or later who knows how to use it!  Be sure to 
  4123. read the REMarks at the beginning of the program listing.  Note 
  4124. the limitation that only up to 500 unique history commands can be 
  4125. saved (extras will be ignored!).
  4126.  
  4127. This version uses no sorting, so all commands remain in the same 
  4128. order as you entered them (capitalization is also maintained and 
  4129. may show up as duplicated commands).  Otherwise, only unique 
  4130. commands are saved in HIST.TXT which should be reloaded every 
  4131. time you need it.  Redirection is also maintained without 
  4132. creating 0 byte files!
  4133.  
  4134. This program is a bit slow.  Shelling out to save the history 
  4135. takes some time, and the longer your history is, the longer it 
  4136. will take to find the unique commands and discard the duplicates.  
  4137. I could supply a faster, file-reading version using the BASIC 
  4138. Wizard library, but most of you won't have it.  If this is a 
  4139. problem, send me a diskette for a copy!
  4140.  
  4141. Saul
  4142.  
  4143.  
  4144. REM Program HISTCOMP.BAS, a history compression program for 4DOS
  4145.  
  4146. REM Written by Saul G. Levy, Tucson, Arizona, February 10-11, 1992
  4147. REM Last changed February 20, 1992
  4148.  
  4149. REM Save the unique 4DOS history commands from a temporary file (HIST.$$$) to
  4150. REM HIST.TXT for reloading later on.  Compile with QuickBASIC 4.x with the /AH
  4151. REM switch to be sure enough memory is set aside for the TEXT$ array
  4152.  
  4153. REM Put the following two commands (within the quote marks) into your
  4154. REM AUTOEXEC.BAT file to replace the current history file with the unique
  4155. REM history commands in the NEW HIST.TXT file:
  4156.  
  4157. REM "HISTORY /F"              [Note:  You must delete the old history first]
  4158. REM "HISTORY /R HIST.TXT"     [or it will be ADDED instead of being replaced!]
  4159.  
  4160. REM Then run HISTCOMP.BAS whenever you wish to save the current history file
  4161. REM (before turning off your computer!)
  4162.  
  4163. REM Note no sorting of the history commands is done so the original order is
  4164. REM maintained along with all of the redirection commands
  4165.  
  4166.     DIM TEXT$(500): REM Holds up to 500 unique history commands, if changed be
  4167.                     REM sure to change all SEVEN references to the number 500!
  4168.  
  4169. REM Program name
  4170.     CLS
  4171.     PRINT "HISTCOMP.BAS, save unique history commands in HIST.TXT"
  4172.     PRINT
  4173.     PRINT "Working..."
  4174.  
  4175. REM Create temporary input file of current history commands
  4176.     SHELL "HISTORY >HIST.$$$"
  4177.  
  4178. REM Open files
  4179.     OPEN "I", 1, "HIST.$$$"
  4180.     OPEN "O", 2, "HIST.TXT"
  4181.     TEXT$ = "": REM Current history command read from input file
  4182.     N = 0: REM Number of unique history commands
  4183.  
  4184. Again:
  4185.     LINE INPUT #1, TEXT$: REM Read a history command
  4186.     IF EOF(1) THEN GOTO Finish: REM End-Of-File mark?
  4187.     IF LEN(TEXT$) = 0 THEN GOTO Again: REM Anything there?
  4188.     IF N = 0 THEN GOTO Store: REM Store new history command in array
  4189.  
  4190. Check:
  4191.     FOR I = 1 TO N: REM Find any previous occurances of this history command
  4192.     IF TEXT$ = TEXT$(I) THEN GOTO Again
  4193.     NEXT I
  4194.  
  4195. Store:
  4196.     N = N + 1: REM Found a new history command, store it
  4197.     IF N > 500 THEN N = 500: GOTO Oops
  4198.     TEXT$(N) = TEXT$
  4199.     GOTO Again: REM Read next history command
  4200.  
  4201. Oops:
  4202.     PRINT "The history file contains too many unique commands!"
  4203.     PRINT "Saving the first 500 unique history commands..."
  4204.  
  4205. Finish:
  4206.     FOR I = 1 TO N: REM Save up to 500 unique history commands in output file
  4207.     PRINT #2, TEXT$(I)
  4208.     NEXT I
  4209.     PRINT "There were"; N; "unique history commands"
  4210.     CLOSE : REM Close files
  4211.     KILL "HIST.$$$": REM Delete temporary input file
  4212.     PRINT "Finished normally": REM Let user know everything is O.K.
  4213.     END
  4214. ---
  4215.  * Origin: Old Pueblo BBS - Tucson Computer Society (1:300/2)
  4216. =-=-=-=-=
  4217.       To:  All                        Message #:  787  
  4218.     From:  Mark Watkins               Submitted:  18 Feb 92 18:47:00  
  4219.  Subject:  Pakem additions               Status:  Public
  4220. Received:  No                             Group:  4DOS (89)
  4221.  
  4222. MSGID: 1:147/24 29a1ac1d
  4223. PID: TeleMail 1.51
  4224.         If anyone reassembled my pakem.btm from the debug scripts I posted a
  4225. couple of days ago, here are some changes you may be interested in...
  4226.  
  4227.         I added selective file deletion and formatting (of the target disk) to
  4228. the options menu. Replace the original "pick" section with:
  4229.  
  4230. :pick
  4231.  
  4232.   *cls bla on blu bor mag
  4233.   drawhline 0 0 79 2 blu on blu
  4234.   drawbox  6 19 14 59 2 bri whi on mag fill bla sha
  4235.   scrput 8 22 whi on bla [C] Insert next disk and Continue
  4236.   scrput 9 22 whi on bla [D] Directory of target disk
  4237.   scrput 10 22 whi on bla [S] Select files to delete (target)
  4238.   scrput 11 22 red on bla [ ] Format target
  4239.   scrput 11 23 bri yel on bla !
  4240.   scrput 12 22 whi on bla [Q] Quit
  4241.   scrput 17 33 bri whi on blu Enter choice:
  4242.  
  4243.   inkey /k"qcds!" %%pick
  4244.  
  4245.   if "%pick" == "q" (
  4246.     cls bor bla
  4247.     scrput 0 0 bri whi on red Aborted at user request.
  4248.     screen 1 0 Files not processed:
  4249.     screen 3 0
  4250.     iff %@filesize[%temp%pakem2.tmp,b] LE %@filesize[%temp%pakem1.tmp,b] then
  4251.       gosub sub1
  4252.       type %temp%pakem2.tmp /p
  4253.     else
  4254.       gosub sub2
  4255.       type %temp%pakem1.tmp /p
  4256.     endiff
  4257.     goto end
  4258.     )
  4259.  
  4260.   if "%pick" == "c" goto Loop
  4261.  
  4262.   if "%pick" == "d" (
  4263.     cls bor blu
  4264.     *dir/2vp %target
  4265.     echo.
  4266.     pause Press any key to return to Pakem...
  4267.     goto pick
  4268.     )
  4269.  
  4270.    if "%pick" == "s" (
  4271.     cls bor blu
  4272.     select *del (%target%*.*)
  4273.     goto pick
  4274.     )
  4275.  
  4276.    if "%pick" == "!" (
  4277.     cls bor blu
  4278.     call format %target        <-- "call" is used because I use PCTools
  4279.                                     pcformat.exe, which is called from
  4280.                                     format.bat. You may wish to change it.
  4281.     goto pick
  4282.     )
  4283.  
  4284.         After I posted the file I discovered a bug that attempted to operate
  4285. on files in subdirectories in the CWD if there were no parameters on the
  4286. command line, or if "*.*" was used as the parameter (I only tested pakem on
  4287. directories with no subs - shame on me!). Here's the fix:
  4288.  
  4289.    Change the line
  4290.  
  4291. if not exist %temp%pakem1.tmp *dir /b /o:sr %& > %temp%pakem1.tmp
  4292.  
  4293.    to
  4294.  
  4295. if not exist %temp%pakem1.tmp *dir /b /a:-d /o:sr %& > %temp%pakem1.tmp
  4296.  
  4297.          Finally, you may wish to add the line "alias cls whi on bla" after
  4298. setlocal. This will be reset to its normal value after completion of the batch,
  4299. and will allow the screen clearing commands in the batch to work properly.
  4300.  
  4301.                                        Enjoy,
  4302.  
  4303.                                           .\\ark \\'atkins
  4304.  
  4305. ... J'suis le Grand Zombie!    
  4306. --- Blue Wave/TG v2.05
  4307.  * Origin: ModemLink BBS =: Yukon, OK := HST/V32 (1:147/24.0)
  4308. =-=-=-=-=
  4309.       To:  Emacs Lovers               Message #:  8116 
  4310.     From:  Maynard Hogg               Submitted:  27 Feb 92 10:44:00  
  4311.  Subject:  Using ^P In Command Lines     Status:  Public
  4312. Received:  No                             Group:  4DOS (89)
  4313.  
  4314. MSGID: 6:730/6 1d8bf894
  4315. To the person who was interested in configuring 4DOS so that ^P at the
  4316. command line means Previous (or whatever it means in EMACS) instead of
  4317. toggling the printer on and off, here's the assembly code for
  4318. disabling the special meaning of ^P. Note, however, that it disables
  4319. ^C (break) and ^S (pause) as well.
  4320.  
  4321. ***
  4322. Conference: C_ECHO
  4323. Date:  2/17/1992
  4324. From: MIKE HAYS
  4325. Subj: disabling Ctrl-Break
  4326. Origin: Programmer's Haven! (1:363/88)
  4327.  
  4328. Well, a cute little assembly routine will filter out CTRL-C, S, and P:
  4329.  
  4330. mov ax, 4401h           ; DOS function 44h, item 01: set device info
  4331. xor dh, dh              ; dh must be 0 for this function call
  4332. or  dl, 20h             ; set bit 5--process binary data
  4333. int 21h                 ; call DOS with data in dx
  4334.  
  4335. This function remains, even after your program is finished, so to
  4336. allow CTRL-C again, remember to clear bit 5, ie, replace "or dl, 20h"
  4337. with "and dl,0DFh"
  4338. --- 
  4339.  * Origin: IMS-NET #1 Tokyo,Japan (6:730/6)
  4340. =-=-=-=-=
  4341.       To:  Maynard Hogg               Message #:  10817    6716 <Thread
  4342.     From:  Kris Lewis                 Submitted:  29 Feb 92  7:23:00  
  4343.  Subject:  RE:Double Commands In Hn      Status:  Public
  4344. Received:  No                             Group:  4DOS (89)
  4345.  
  4346. > KL>I wrote a little BTM to do the same job as uniq, but if there is a
  4347. > Could you show us your BTM file?
  4348.  
  4349.  SetLocal
  4350.  
  4351.  QSort %1^Cls^Set FileIn=%1
  4352.  Set Lin=%@Lines[%FileIn]
  4353.  Set Last=%@Char[255]
  4354.  EchoS Deleting Duplicates:
  4355. :Next
  4356.    Dec Lin^Set Curr="%@Line[%FileIn,%Lin]"
  4357.    If %Curr NE %Last Echo %Curr >>Unique.Lst
  4358.    Set Last=%Curr
  4359.  Loop Next Until %Lin EQ 0
  4360.  
  4361.  EndLocal
  4362.  
  4363. -------------------
  4364.  
  4365. The aliases in it are:
  4366.  
  4367. DECV Set %1=%@Eval[%[%1]-%2]
  4368. DEC DECV %1 1
  4369. LOOP If %2 Eq While If %3& Goto/I %1^If %2 Eq Until If Not %3& Goto/I %1
  4370.  
  4371. --------------------
  4372.  
  4373. I realize it can be prettied up, and won't work if there's commas in the file 
  4374. being unique'd. I wrote it to do the job on a list of numbers and didn't care 
  4375. about that detail, but it can be fixed easily by putting "'s in the right 
  4376. places, as I did above. The BTM, as it runs on my own system,
  4377. does not have the 
  4378. "'s on it, and is aimed at a specific file, so I had no references to a 
  4379. command-line until editing it in the message. :)
  4380.  
  4381. K
  4382. --- JMail
  4383.  * Origin: * Trader's World 619-BUG-TRAX * (1:202/613)
  4384. =-=-=-=-=
  4385.  
  4386.  
  4387. ------------------------------------------------------------------------
  4388.  
  4389. Echo Flag : N       Permanent: N       Export: N      Personal Read: N
  4390.  
  4391.  BBS: ASTRIX          Conference: 4DOS            Imported: 10/21/1990
  4392.   To: RICHARD KLOC                    Num: 1769       Date: 10/18/1990
  4393. From: STEVEN WIRSZ                     Re: 0          Time: 10:01 pm
  4394. Subj: REMEMBERING ALIASES            Prvt: N          Read: N
  4395.  
  4396. RK>I have a question, Is there a way to display a list of all aliases
  4397. RK>currently in effect on your 4DOS system?  Or do I have to write them
  4398. RK>down?  The alias feature is super!  You can almost create your own
  4399. RK>operating system!
  4400.  
  4401. To display all the aliases, type ALIAS by itself. To redirect it to your
  4402. printer, execute ALIAS > PRN at the command prompt.
  4403.  
  4404. RK>But wouldn't it be nice to have a utility similar to 4Edit and 4Zip
  4405. RK>that display all current aliases in alphabetical order and the actual
  4406. RK>commands they execute, and allow editing of aliases in this way?
  4407. RK>Is there such a program, if not maybe there will be!
  4408.  
  4409. There is a way to do that, with a simple alias and a good editor. The alias
  4410. is -
  4411.  
  4412. ALIASDAT=ted c:\alias.dat^unalias *^alias /r c:\alias.dat
  4413.  
  4414. This allows you to automaticly update the alias file that gets loaded in
  4415. AUTOEXEC.BAT, gives you a full screen list of your aliases, like 4edit, and
  4416. add, delete, or change any alias easily.
  4417.  
  4418. PS. This requires TED.COM - from PCMagazine.
  4419. ---
  4420.  ■ SLMR 1.0 ■ Can't steal this tagline. You have too many tags allready
  4421.  
  4422. PCRelay:PRODATA -> #68 RelayNet (tm)
  4423. 4.10               ProData Exchange * Tampa, FL * (813) 920-8820
  4424.  
  4425.  
  4426. ------------------------------------------------------------------------
  4427.  
  4428. Echo Flag : N       Permanent: N       Export: N      Personal Read: N
  4429.  
  4430.  BBS: ASTRIX          Conference: 4DOS            Imported: 10/20/1990
  4431.   To: RICHARD KLOC                    Num: 1746       Date: 10/17/1990
  4432. From: REX CONN                         Re: 1722       Time:  5:40 pm
  4433. Subj: REMEMBERING ALIASES            Prvt: N          Read: N
  4434.  
  4435. -> I have a question, Is there a way to display a list of all aliases
  4436. -> currently in effect on your 4DOS system?  Or do I have to write them
  4437. -> down?
  4438.  
  4439. It's not feasible to have an external command display aliases, (unless
  4440. it just reads them from an ALIAS /R file) because the alias list is
  4441. swapped out of memory when running an external program.
  4442.  
  4443. If you just want to view the aliases, enter ALIAS with no arguments at
  4444. the prompt.  If you want to see everything sorted, try:
  4445.  
  4446.         alias | sort | list /s
  4447.  
  4448. If you want to sort the list, edit it, and read everything back into the
  4449. active alias list, you can try something like:
  4450.  
  4451.         alias | sort>aliases ^ e aliases ^ unalias * ^ alias /r aliases
  4452.  
  4453. For the "e", substitute the name of your own favorite ASCII editor.
  4454.  
  4455.         - Rex
  4456.                                                                                                                
  4457. PCRelay:DCINFO -> #16 MetroLink (tm) International Network
  4458. 4.10              DC Info Exchange MetroLink International Hub
  4459.      
  4460.  
  4461. ------------------------------------------------------------------------
  4462.  
  4463. Echo Flag : N       Permanent: N       Export: N      Personal Read: N
  4464.  
  4465.  BBS: ASTRIX          Conference: 4DOS            Imported:  9/23/1990
  4466.   To: ROBERT KING                     Num: 1378       Date:  9/16/1990
  4467. From: NATHAN MELHORN                   Re: 0          Time:  5:06 am
  4468. Subj: Importing Descriptions         Prvt: N          Read: N
  4469.  
  4470. Robert,
  4471.  
  4472. RK>I've been DIRNOTES to keep file descriptions on my system for some ti
  4473.  
  4474.   It was some time ago that I converted my DIRNOTES files to
  4475. DESCRIPT.IONs.  I still have an AWK script around that did the job
  4476. at the time:
  4477.  
  4478. ┌───────────────────dirn4dos.awk──────────────────────────────┐
  4479. #Convert PCMagazine DirNotes output to 4Dos descript.ion file
  4480. # Copyright (C) Nathan R. Melhorn (1989)
  4481. # You may use this program freely
  4482.  
  4483. BEGIN { # Setup UPPER/lower translate table.
  4484.     uppers = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
  4485.     lowers = "abcdefghijklmnopqrstuvwxyz"
  4486. }
  4487. #         Here's the line format we're looking for
  4488. #   FILENAME EXT     size  mm-dd-yy  .Time.  Description of file..
  4489. # ┌───────────────────────────────────────────────────────────────────────────┐
  4490. # │ LIST     COM     9209   1-30-89  12:48a  V. Buerg's File Lister V4.2a     │
  4491. # └───────────────────────────────────────────────────────────────────────────┘
  4492. #   ....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+
  4493.  
  4494. substr($0,10,3) < "!"  { print lc($1) " " substr ($0 ,42, 38) ; next }
  4495.   { print lc($1) "." lc($2) " " substr ($0 ,42, 38) }
  4496.  
  4497. # Function to convert string parameter 's' to lower case. 'i' is a
  4498. #  local variable used for counting.
  4499. function lc(s, i) {
  4500.     for (i = 1; i <= 26; i++)        # go through alphabet
  4501.     gsub (substr (uppers, i, 1), substr (lowers, i, 1), s);
  4502.     return s
  4503. }
  4504. └─────────────────────────────────────────────────────────────────┘
  4505.  
  4506.   Invocation would be:         ┌────────(fill this in)
  4507.                          ┌─────┴────┐
  4508.      awk -f dirn4dos.awk DIRNOTES.FIL >descript.ion
  4509.  
  4510.   Since the script converts all file names to lower case, watch
  4511. out for directory names, and KEEP A BACKUP of your old DIRNOTES
  4512. and descript.ion files.
  4513.  
  4514.   I found AWK210.ZIP and AWK210SC.ZIP (11-17-88) on my local BBS.
  4515. I also found VSNOBOL.ZIP (Vanilla Snobol, 5-16-88), another very
  4516. useful text processing language.
  4517.  
  4518.   << regards, Nate -- Sat  09-15-1990, 19:55 >>
  4519. ---
  4520.  ■ EZ 1.33 #887 ■ Abro Hakmo Astab!
  4521.                                                        
  4522. PCRelay:FUTURE -> #152 RelayNet (tm)
  4523. 4.10              617 227-4170 HST ** 720-1330 HAY 9600
  4524.                                   
  4525.       To:  Bob Campbell               Message #:  8710     6724 <Thread> 8764
  4526.     From:  furlan primus              Submitted:  04 Feb 91 22:13:00  
  4527.  Subject:  Size vs Work Around           Status:  Public
  4528. Received:  No                             Group:  4DOS (89)
  4529.  
  4530. MSGID: 1:141/590@fidonet 27ae3f23
  4531.  
  4532. Languaging on <Feb 02 09:48> Bob Campbell (1:1060/1@fidonet) asserts:
  4533.  
  4534.  BC> One such feature that was recently asked for is a %_Label variable, and 
  4535.  BC> another was the FILES.BBS/Descript.ion file thing.   
  4536.  
  4537. the following may do the trick for you in converting from a
  4538. Files.Bbs type file to a Descript.ion file:
  4539.  
  4540. f2d.btm
  4541. -----------------------
  4542. setlocal
  4543. set i=0
  4544. :top
  4545. set line=%@line[files.bbs,%i]
  4546. if "%line" == "" quit
  4547. set name=%@substr[%line,0,12]
  4548. set desc=%@substr[%line,13,%@eval[%@len[%line] - 13]]
  4549. echo %name %desc >> descript.ion
  4550. echo %i %name %desc
  4551. inc i
  4552. goto top
  4553.  
  4554. where INC is an alias from a recent 4DOS newsletter:
  4555.  
  4556. INC=set %1=%@eval[%[%1]+1]
  4557.  
  4558. it makes incrementing a variable by one quite easy....
  4559.  
  4560.  
  4561. fl
  4562.  
  4563.  
  4564. --- msged 2.07
  4565.  * Origin: form is void. (1:141/590@fidonet)
  4566.  
  4567. =-=-=-=-=
  4568.       To:  Bill Bond                  Message #:  8811     1049 <Thread
  4569.     From:  Martin Austermeier         Submitted:  31 Jan 91  4:09:00  
  4570.  Subject:  del .                         Status:  Public
  4571. Received:  No                             Group:  4DOS (89)
  4572.  
  4573. MSGID: 2:244/7010.2513 0a644fa1
  4574. Hi Bill,
  4575.  
  4576. BB> #2 d:\backup>del .
  4577. BB> File not found "d:\backup"
  4578.  
  4579. Here's a little ALIAS to fix the prob:
  4580.  
  4581. ; BugFix 4DOS 3.02a
  4582. DEL IFF "%1"=="." THEN^*del *.*^ELSE^*del %&^ENDIFF
  4583.  
  4584. so long 4 2day
  4585. from Stuttgart, FRG
  4586.  Martin
  4587.  
  4588. --- Yuppie! v2.00.19f/bitter
  4589.  * Origin: Too good 4 DOS, alright 4 me! (2:244/7010.2513)
  4590.  
  4591. =-=-=-=-=
  4592.       To:  Ping Hansen                Message #:  6351     4456 <Thread> 6353
  4593.     From:  Martin Austermeier         Submitted:  11 Feb 91  2:20:00  
  4594.  Subject:  Directory dependent execu     Status:  Public
  4595. Received:  No                             Group:  4DOS (89)
  4596.  
  4597. RE: Directory dependent execution
  4598. MSGID: 2:244/7010.2513 0aadf39a
  4599. Hi Ping,
  4600.  
  4601. PH> I am wondering how to make an alias or a .btm that will execute different
  4602. PH> programs depending on wether the current directory is, say d:\msc, (or a
  4603. PH> subdirectory thereof) or not. Any suggestions ?
  4604. PH> 
  4605. PH> Ceterum censeo, delenda est Saddam Hussein !
  4606.  
  4607. There are many ways that lead to Rome :-)
  4608. One could be: defining ALIASES, or SET Variables.
  4609. You might want to use the MSC compiler while you are in the \MSC
  4610. directory, or the TCC compiler from the \TC directory.
  4611.  
  4612. SETLOCAL
  4613. SET comp=
  4614. IFF %_CWD == C:\MSC THEN
  4615.   SET kill=MSC.EXE /shoot 
  4616. ELSE
  4617.   IF %_CWD == C:\TC THEN
  4618.     SET kill=TCC.EXE /drop_bomb
  4619.   ENDIFF
  4620. ENDIFF
  4621.  
  4622. IFF "%kill%" NE "" THEN
  4623.   %kill% hussein
  4624. ENDIFF
  4625.  
  4626. (not tested, but should work :)
  4627.  
  4628. so long 4 2day
  4629. from Stuttgart, FRG
  4630.   Martin
  4631.  
  4632. --- Yuppie! v2.00.19g/Bitris
  4633.  * Origin: Too good 4 DOS, alright 4 me! (2:244/7010.2513)
  4634.  
  4635. =-=-=-=-=
  4636.       To:  Terry Pinto                Message #:  6353     6351 <Thread
  4637.     From:  Morris Turpin              Submitted:  14 Feb 91 16:59:00  
  4638.  Subject:  Directory dependent execu     Status:  Public
  4639. Received:  No                             Group:  4DOS (89)
  4640.  
  4641. RE: Directory dependent execution
  4642. MSGID: 1:163/223.7 27bb26da
  4643.  
  4644.  In a message dated Feb 12 at 21:26, Terry Pinto of 1:105/340
  4645.  wrote to Morris Turpin:
  4646.  
  4647.  TP> What about...
  4648.  TP> iff "%_cwd" eq "d:\msc" then
  4649.  TP>    ...
  4650.  TP> else
  4651.  TP>    iff "%_cwd" eq "d:\msc\sub1" then
  4652.  TP>       ...
  4653.  TP>    else
  4654.  TP>       iff "%_cwd" eq "d:\msc\sub2" then
  4655.  TP>          ...       else
  4656.  TP>          ...
  4657.  TP>       endiff
  4658.  TP>    endiff
  4659.  TP> endiff  
  4660.  TP> This may be a bit bulky depending on how many directories you want 
  4661.  
  4662. It also pre-supposes that you know what directory you are in
  4663. already, making the check unnecessary.  I believe the original
  4664. question asked how to do it *without* that knowledge (ie within a
  4665. batch file as %1 for example).
  4666.  
  4667. As an aside, and for your own information, instead of:
  4668. IFF
  4669.   ELSE
  4670.     IFF
  4671.       ELSE
  4672.         IFF
  4673.           ELSE
  4674.         ENDIFF
  4675.     ENDIFF
  4676. ENDIFF
  4677.  
  4678. use:
  4679.  
  4680. IFF
  4681.   ELSEIFF
  4682.   ELSEIFF
  4683.   [ELSE]
  4684. ENDIFF
  4685.  
  4686. you'll find it executes faster.
  4687.  
  4688.  TP> I hope this helps in your project.
  4689.  
  4690. Nope, not mine.  :^)  I was responding to a question posed by
  4691. Ping Hansen.  Maybe it will help him, though.
  4692.  
  4693.  
  4694.  
  4695. --- msged 2.06
  4696.  * Origin: Ansi's Escape, Echo Point (1:163/223.7)
  4697.  
  4698. =-=-=-=-=
  4699.       To:  MICHAEL LEWIS              Message #:  10264    4532 <Thread> 10355
  4700.     From:  CHRIS GRAHAM               Submitted:  19 Feb 91 20:00:00  
  4701.  Subject:  MISC ROUTINES                 Status:  Public
  4702. Received:  No                             Group:  4DOS (89)
  4703.  
  4704.  
  4705.      Wow, interesting stuff.  I don't really use/remember most of the
  4706. %functions available in 4DOS, though when I just got it, I checked
  4707. through some of that stuff and wrote a small file-managing  (menu-driven
  4708. [sorta], at that) .BTM "shell".
  4709.  
  4710.      I just got back into using 4DOS as I have realised how much its
  4711. useful traits outweigh my urge to break out of my AUTOEXEC before it
  4712. runs 4DOS before it runs 4START (which does virus scan, format recover,
  4713. etc.)...  I started working on aliases a few days ago, this' what I got:
  4714.  
  4715. (the ~ character is actually a ^G)
  4716.  
  4717. MP=for %a in (%2 %3 %4 %5) do %1 %a
  4718.  
  4719. "multi-parameters" for non-4DOS commands (ext. programs)
  4720.  
  4721. HC=for %a in (%2 %3 %4 %5) do type %a >prn^echo>prn^echo ~~~
  4722.  
  4723. "hard copy"
  4724.  
  4725. VU=select list (*.doc+*.txt+*.now+*.me)
  4726.  
  4727. "view".  Useful to go to new disks or directories you just unzipped new
  4728. programs to and quickly get a list of text files to read.
  4729.  
  4730. OPEN=cdd c:\archive^pkunzip %1 temp^cd temp^scan . -nomem^echo ~~~
  4731.  
  4732. type "OPEN zipname".  From any drive/directory it will unzip a zip to my
  4733. temporary archive directory, scan for viruses, leave me in that
  4734. directory, and beep me when ready.
  4735.  
  4736. CCD=*cd
  4737. CD=cod
  4738. BD=popd
  4739. ALD=alias cd cad %1
  4740. OND=alias cd cod %1
  4741. CAD=ccd d:%1^ccd c:%1^beep 500 1
  4742. COD=pushd^cdd %1
  4743.  
  4744. The above includes some stuff that is of more use to me right now than
  4745. will be.
  4746.  
  4747. COD (change one drive's directory)
  4748.  
  4749. This switches to a mode where typing CD B:\TEMP will go to that drive
  4750. and directory, and typing BD (back directory) will go to the previous
  4751. directory.
  4752.  
  4753. CAD (change all drives' directories)
  4754.  
  4755. I am selectively moving a lot of directories over from my drive C: to my
  4756. drive D:.  When I type CAD, it switches to a mode where it changes to or
  4757. shows the directory I specify, and then beeps so I know I'm in that
  4758. mode.
  4759.  
  4760. ---
  4761. You yourself probably don't need any of these hints, but I figured
  4762. someone a little less advanced might pick up some ideas from them.  They
  4763. are simple, but quite effective in upping my DOS efficiency.  I am
  4764. looking for some really interesting ones, I will be developing some when
  4765. I find the time, or, of course, when necessity/laziness calls, like
  4766. today.
  4767.  
  4768.                                                 Chris Graham
  4769. --- PcBoard 14.5U
  4770.  * Origin: Logical Solutions (403)299-9900 3.2 GIG 18 Lines HSTs.V42 (1:134/10)
  4771.  
  4772. =-=-=-=-=
  4773.       To:  All                        Message #:  9914 
  4774.     From:  Robert Mashlan             Submitted:  02 Mar 91 15:30:00  
  4775.  Subject:  dual monitor aliases          Status:  Public
  4776. Received:  No                             Group:  4DOS (89)
  4777.  
  4778. MSGID: 1:147/38 310f723b
  4779. Hello all,
  4780.  
  4781. I thought I might post these in case anyone needs them.  I have
  4782. both a monochrome and CGA monitor hooked up to my system.  I use
  4783. these batch files to switch between them with 4dos.
  4784. ===========================================================
  4785.  
  4786. alias cga `iff monitor == mono then^echo switching to cga
  4787. mode...^mode co80^setdos /s6:8^endiff`
  4788.  
  4789. alias mono `iff monitor == color then^echo switching to
  4790. monochrome mode...^mode mono^setdos /s10:14^endiff`
  4791. ===========================================================
  4792.  
  4793. Robert
  4794.  
  4795. --- FD 1.99c
  4796.  * Origin: RWare Software HQ  (405)447-0944 (1:147/38)
  4797.  
  4798. =-=-=-=-=
  4799.  
  4800. ------------------------------------------------------------------------
  4801.  
  4802. Echo Flag : N       Permanent: N       Export: N      Personal Read: N
  4803.  
  4804.  BBS: ASTRIX          Conference: 4DOS            Imported:  2/26/1991
  4805.   To: ALL                             Num: 3897       Date:  2/20/1991
  4806. From: KEVIN WHITEFOOT                  Re: 0          Time:  6:28 am
  4807. Subj: ALIASES                        Prvt: N          Read: N
  4808.  
  4809.  
  4810. Just thought someone might be interested in the following
  4811. fragment of my autoexec and of my aliases.  I use these to save
  4812. myself the tedious job of editing autoexecs when I want to make
  4813. a change to my alias list or environment (path, prompt and so on).
  4814. ---Autoexec
  4815. rem Setup 4DOS
  4816. alias /r c:\4dos\aliases
  4817. history /r c:\4dos\history
  4818. set /r c:\4dos\environs
  4819.  
  4820. ---Aliases
  4821. SA=echo Saving Aliases^alias >! c:\4dos\aliases
  4822. SE=echo Saving Environment^set >!c:\4dos\environs
  4823. SH=echo Saving History^ history >! c:\4dos\history
  4824.  
  4825. ---Some more aliases which illustrate how useful they can be even
  4826. if you don't try to be extra clever.  I'm too busy (lazy) to type
  4827. four characters when one will do.  And they save having a long path.
  4828.  
  4829. E=exit
  4830. F=svm 80x25 ^ c:\dos\lookfor
  4831. L=c:\dos\list %&
  4832. M=set mcaddir c:\mathcad ^c:\mathcad\mcad /eh /f0 /b63
  4833. MEM=*mem/a | c:\dos\list /s
  4834. MFT=c:\qemm\mft
  4835. PKUZ=c:\pkarc\pkunzip
  4836. PKZ=c:\pkarc\pkzip
  4837. PKL=c:\pkarc\pklite
  4838. Q=c:\qpro\q
  4839. R4=set r4 c:\reflect^c:\reflect\r4
  4840.  
  4841. T=c:\tp\turbo
  4842. TD=c:\td\td
  4843. WS=c:\dos\svm 132x60 ^ c:\ws5\ws
  4844. Z=c:\zstem\zstem240^cls
  4845. V=c:\drdos\viewmax
  4846.  
  4847. PCRelay:CAVE -> #334 RelayNet (tm)
  4848.                                
  4849.  
  4850. ------------------------------------------------------------------------
  4851.  
  4852. Echo Flag : N       Permanent: N       Export: N      Personal Read: N
  4853.  
  4854.  BBS: ASTRIX          Conference: 4DOS            Imported:  2/26/1991
  4855.   To: KEVIN WHITEFOOT                 Num: 3919       Date:  2/23/1991
  4856. From: SAM PIERCE                       Re: 3522       Time: 10:52 am
  4857. Subj: ALIASES                        Prvt: N          Read: N
  4858.  
  4859.  
  4860. KW>Just thought someone might be interested in the following
  4861.  
  4862. KW>SA=echo Saving Aliases^alias >! c:\4dos\aliases
  4863. KW>SE=echo Saving Environment^set >!c:\4dos\environs
  4864. KW>SH=echo Saving History^ history >! c:\4dos\history
  4865.  
  4866. Always interested in swapping a few of these goodies.  Here are a couple
  4867. of my favorites.
  4868.  
  4869. These two let me view my aliases or enviroment variable with LIST, so I
  4870. can scroll up and down to see the whole list.  They also alphabetize the
  4871. list again in case I've made any changes.
  4872.  
  4873.      ALIAS=iff "%1"=="" then^*alias|sort|list /s^else^*alias %1&^endiff
  4874.      SET=iff x%1==x then^*set|sort|list /s^else^*set %&^endiff
  4875.  
  4876. To add new aliases to my basic collection:
  4877.  
  4878.      UPDA*TE=*alias|sort > c:\4dut\aliases.sam^unalias *^
  4879.           *alias/r c:\4dut\aliases.sam
  4880.  
  4881. To move files about and maintain my descript.ion files I use these
  4882. rather than a one of the nifty file managers.
  4883.  
  4884.      SC=select copy [%1:*.*] %2:
  4885.      SM=select move [%1:*.*] %2:
  4886.  
  4887. I've found Kidder's FDU to be a great tool for handling extended file
  4888. descriptions:
  4889.      DES*CRIBE=iff .%1==. then^fdu^elseiff^isdir %1 then^fdu
  4890.           %1\*.*^else^*describe %1^endiff
  4891.  
  4892. General tools:
  4893.      AZ=select pkzip -a %1.zip [*.*]
  4894.      EX=exit                                (Cause I type this so often)
  4895.      free=iff x%1==x then^*free c: d: e: f: g:^else free %1:
  4896.      NLA=echo %2& | label %1:^vol %1:       (makes New LAbel on disk)
  4897.      pku*nzip=*pkunzip -q %&
  4898.  
  4899.  
  4900. 4DOS is great fun!
  4901.  
  4902.                     --  sam
  4903.  
  4904. ---
  4905.  ■ SLMR 1.05 ■ Unable to locate Coffee -- Operator Halted!
  4906.                                                                                                                     
  4907. PCRelay:DCINFO -> #16 MetroLink (tm) International Network
  4908. 4.10              DC Info Exchange MetroLink International Hub
  4909.      
  4910.  
  4911. ------------------------------------------------------------------------
  4912.  
  4913. Echo Flag : N       Permanent: N       Export: N      Personal Read: N
  4914.  
  4915.  BBS: ASTRIX          Conference: 4DOS            Imported:  2/26/1991
  4916.   To: STEPHAN DONELIAN                Num: 3923       Date:  2/19/1991
  4917. From: ANTHONY CLARKE                   Re: 0          Time:  8:38 am
  4918. Subj: descript.ion                   Prvt: N          Read: N
  4919.  
  4920. Hi,
  4921.  
  4922. I don't know if this is any help but I do the following -
  4923.  
  4924. Alias SDEL=select delete (*.*) /y
  4925.  
  4926. This shows all files !
  4927.  
  4928. Regards
  4929. ---
  4930.  ■ SLMR 1.0 ■ It's only a hobby ... only a hobby ... only a
  4931.  
  4932. PCRelay:OLEF -> #181 RelayNet (tm)
  4933.                          
  4934.  
  4935. ------------------------------------------------------------------------
  4936.  
  4937. Echo Flag : N       Permanent: N       Export: N      Personal Read: N
  4938.  
  4939.  BBS: ASTRIX          Conference: 4DOS            Imported:  2/26/1991
  4940.   To: JAMES LUBIN                     Num: 3912       Date:  2/20/1991
  4941. From: JIM WINSTEAD                     Re: 0          Time:  9:12 pm
  4942. Subj: WISH LIST                      Prvt: N          Read: N
  4943.  
  4944. JL∙I would like to see an addional %_date variable in the format YYMMDD.
  4945.   ∙This would be great for naming files.
  4946.  
  4947. That's not too hard to emulate given the current capabilities 4DOS
  4948. has....  ex:
  4949.  
  4950. ren %1 %#substr[%#name[%1],0,4]%@substr[%_DATE,0,2]
  4951.            %#substr[%_DATE,3,2].%@ext[%1]
  4952.  
  4953. Actually, this only rename, for example, FILENAME.TXT to FILE0220.TXT,
  4954. but you could easily only take the first two characters of the
  4955. filename and add the year.  In any case, you should get the general
  4956. idea of how this can be done.
  4957. ---
  4958.  ■ SLMR 1.05 ■ Kill all exclamation points!!!
  4959.  
  4960. PCRelay:BYTELINE -> #365 RelayNet (tm)
  4961.                            
  4962.       To:  Rex Conn                   Message #:  9173     3791 <Thread
  4963.     From:  Wally Meerschaert          Submitted:  23 May 91 13:40:00  
  4964.  Subject:  feature request               Status:  Public
  4965. Received:  No                             Group:  4DOS (89)
  4966.  
  4967.  RC> It's true it's not as obvious as it might be, but ESET is
  4968.  RC> sharing the line editing code with the command line editing
  4969.  RC> function, and an ESC in that function means clear the input,
  4970.  RC> not cancel the command.  I'd rather not get into trying to make
  4971.  RC> the function work differently for different commands.
  4972.  
  4973. Well if Rex can't deliver, I can...  This is one for the kludge
  4974. directory folks, and it's only a first stab.  What it does is the same
  4975. thing as eset, except that it allows the use of ESC to clear the entire
  4976. line.  I don't know if I personally will even use this, because I
  4977. wouldn't remember to use ee instead of eset, but here it is...
  4978.  
  4979. alias ee= `keystack "set %1=%[%1]%"`
  4980.  
  4981. What I really liked about doing this one was the fact that I could.
  4982. That in itself is a testement to Rex's work.  I guess this means that
  4983. Rex DID deliver...
  4984.  
  4985. --- Via Silver Xpress V2.28
  4986.  
  4987.  
  4988. --- QM v1.00
  4989.  # Origin: REG_10_SDSCoord 1:125/41 HST/V.32 415-621-2609 (8:914/201.0)
  4990.  * Origin: Network Gateway to RBBS-NET  (RBBS-PC 1:10/8)
  4991.  
  4992. =-=-=-=-=
  4993.       To:  Rolf Thomassen             Message #:  9242     5238 <Thread> 9252
  4994.     From:  Philipp Thomas             Submitted:  16 May 91  3:58:00  
  4995.  Subject:  autoexec vs. 4start           Status:  Public
  4996. Received:  No                             Group:  4DOS (89)
  4997.  
  4998. MSGID: 2:242/25.5 2831e993
  4999. PID: GoldED 2.3
  5000. Hello Rolf,
  5001.  
  5002. In a msg of <13 May 91>, you wrote to Dayton Livingston:
  5003.  
  5004.  RT>   Prompt [%_SHELL%] %Prompt%
  5005.  
  5006. Why not make use of 4DOS variables for your prompt ?
  5007. This is what my prompt definition looks like:
  5008.  
  5009. prompt $Xc: : $Xd:  $Xe: Shell:$Z$_$n:$g
  5010.  
  5011. The $X statements show me the current directory on all drives.
  5012.  
  5013. And this is how the prompt is displayed:
  5014.  
  5015. C:\FD : D:\  E:\FILES\LANG\C  Shell:1
  5016.  
  5017. D:>
  5018.  
  5019. You could write your definition as: Prompt $Z %prompt% . Same
  5020. effect, but less typing :-)
  5021.  
  5022.                                               Cheerio
  5023.                                                     Philipp
  5024.  
  5025. --- GoldED 2.30
  5026.  * Origin:  Point of GORDIC NODE - 4DOS Support BBS  (2:242/25.5)
  5027.  
  5028. =-=-=-=-=
  5029.       To:  Gerhard Hoogterp           Message #:  9243     9239 <Thread
  5030.     From:  Oliver Schwabedissen       Submitted:  16 May 91 18:05:00  
  5031.  Subject:  DIR command                   Status:  Public
  5032. Received:  No                             Group:  4DOS (89)
  5033.  
  5034. MSGID: 2:248/19 2833036e
  5035. Hi Gerhard!
  5036.  
  5037. In your msg to Jeroen Feddema, dated <13 May 91 17:40>, it said:
  5038.  
  5039.  >> Does anyone know how I could use the 4DOS DIR command in a batch
  5040.  >> file to get a listing of ONLY filenames and descriptions WITHOUT
  5041.  >> the file size and creation date/time info?
  5042.  
  5043.  GH> What do you think of:
  5044.  
  5045.  GH> Attrib -H Descript.ion
  5046.  GH> Copy Descript.ion Files.bbs
  5047.  GH> Attrib +H Descript.ion
  5048.  GH> Describe Files.bbs "Files description file"
  5049.  
  5050.  GH> ? Didn't test it here, but see no reason why it shouldn't work..;-)
  5051. I tested it here and used that for a long time. But when I
  5052. started to use TICK (automatic file distribution) I couldn't use
  5053. the 'copy' any more because new files and descriptions were added
  5054. automatically to FILES.BBS. And I also have a download statistic
  5055. in FILES.BBS. Now I sometimes need to copy the description from
  5056. FILES.BBS to DESCRIPT.ION and sometimes the other way round.
  5057. Depends on how I received the file (via TICK or requested by myself).
  5058.  
  5059.  
  5060. Greetings from Germany
  5061.  
  5062.  <=- Oliver -=>
  5063.  
  5064. --- GoldED v2.31p+ via BT 2.40
  5065.  * Origin: Actors will happen in the best-regulated families. (2:248/19)
  5066.  
  5067. =-=-=-=-=
  5068.       To:  Paul Marwick               Message #:  9246 
  5069.     From:  andy kreuzer               Submitted:  16 May 91 17:13:00  
  5070.  Subject:  Adding strings                Status:  Public
  5071. Received:  No                             Group:  4DOS (89)
  5072.  
  5073. MSGID: 2:241/7014 581131a3
  5074.  >  BP> set a=%@substr[%_date,3,2]%@substr[%_date,0,2]%@substr[%_date,6,4]
  5075.  > BP>
  5076.  >  BP> this works on my at. another way is to put day,month and year every in
  5077.  > BP> one variable (i.e. d,m and y) and recombine them with
  5078.  >
  5079.  > :-) I like complicated solutions...  On the other hand, for that sort
  5080.  > of function, there is a much easier way of doing it.  My batch files
  5081.  > do this...
  5082.  
  5083. not for germans. ;-)
  5084.  
  5085.  > ren max.log %_date.max
  5086.  >
  5087.  > Works just fine, and produces directory entries as below:
  5088.  >
  5089.  > 05-05-91.max
  5090.  
  5091. in germany, this would result in an illegal filename, like 05.05.91.xxx
  5092.  
  5093. keep on hacking
  5094.         ....andy
  5095.  
  5096. --- 
  5097.  * Origin: it's lonely in the saddle since the horse died! (2:241/7014)
  5098.  
  5099. =-=-=-=-=
  5100.       To:  Bob Campbell               Message #:  10004
  5101.     From:  Mike Arst                  Submitted:  19 May 91 12:05:00  
  5102.  Subject:  .BTM to imitate 4ZIP util     Status:  Public
  5103. Received:  No                             Group:  4DOS (89)
  5104.  
  5105. Wuzn't it you that was interested in the batch file I was trying
  5106. to put together to replace the 4ZIP utility? Memory fails me re:
  5107. who asked about it.
  5108.  
  5109. I had problems with bugs in 4ZIP so thought that with some of the
  5110. utils here I could come up with a batch file that'd do the job,
  5111. even though it would surely be slower than an .EXE or .COM file
  5112. dedicated to the task. Ok, here's a basic outline of the .BTM
  5113. file. I know that it's too restrictive at this point (doesn't
  5114. allow for wildcards or paths) but that simplified my life in
  5115. writing it. The tools used are:
  5116.  
  5117. PKZIP
  5118. PKUNZIP
  5119. GREP (the version by William McCormick)
  5120. SED (the GNU version, modified - i.e., from SEDMOD.ZIP)
  5121.  
  5122. I won't go into the error checking in great detail but will
  5123. instead just say what it is. .BTM file name is 4Z.BTM. Syntax to
  5124. add a file to an archive is:  4z a zipname filename    Syntax to
  5125. extract a file from an archive is:  4z e zipname filename
  5126.  
  5127. -  If there aren't 3 command line params, give syntax message & quit.
  5128. -  If there is path information, or any wildcard, in command line,
  5129.    give error message and quit (uses INDEX function to check command
  5130.    line for "*" or "?" or "\" or ":".)
  5131. -  If first param is neither 'a' nor 'e', give syntax message & quit.
  5132. -  If first param is 'e' - go to the :EXTRACT label.
  5133.  
  5134. Here's what happens in the 'add file' routine, which comes first:
  5135.  
  5136. -  If the file to be added doesn't exist, give error msg & quit.
  5137. -  If zip file doesn't exist, ask if you want to create it. If "no,"
  5138.    quit at once.
  5139. -  If zip file exists but is read-only, give error message and quit.
  5140.  
  5141. Check the zip file for the 'member' file you want to add (uses
  5142. "PKUNZIP -T" and if errorlevel is 0, ask if you want to add the
  5143. new file, *over-writing* the old one. If "no," then quit at once).
  5144.  
  5145. Run the DESCRIBE function now - allows user to add or delete an
  5146. existing file comment or change existing file comment. When user
  5147. has done whatever is appropriate there, then pressed ENTER ...
  5148.  
  5149. 1) Add the file from disk into the .ZIP archive
  5150.    (if errorlevel is not 0 report PKZIP error and terminate now)
  5151.  
  5152. 2) If file DESCRIPT.ION does not exist, you're done. Quit. If
  5153.    it does exist:
  5154.  
  5155. 3) Get the comment, using GREP:
  5156.  
  5157. GREP "^%@lower[%3]" descript.ion >& NUL
  5158.  
  5159. Use LOWER function to ensure that GREP is looking for a
  5160. *lower-case* string within DESCRIPT.ION (it can read DESCRIPT.ION
  5161. despite its being a hidden file). The regular expression uses the
  5162. "^" character to indicate "search ONLY at the beginning of a
  5163. line." If the errorlevel returned is not 0, it means there is no
  5164. file by the name "%@lower[%3]"
  5165. in DESCRIPT.ION. In that case, don't do anything further.
  5166.  
  5167. If the description exists, then GREP returns errorlevel 0. In
  5168. that case, use SED to extract the comment out of DESCRIPT.ION, thus:
  5169.  
  5170. 4) sed -n "/^%@lower[%3]/s/^[^ ]+ //p" descript.ion> temp.tmp
  5171.  
  5172. This ugly little regular expression searches ONLY the line in
  5173. question within DESCRIPT.ION, and prints the line but *without*
  5174. the file name itself. That is, only that particular file comment
  5175. is printed - and redirected to file TEMP.TMP.
  5176.  
  5177. 5) Now add contents of the one-line file TEMP.TMP as a comment to
  5178. the .ZIP file, then kill the temporary file:
  5179.  
  5180. pkzip -c ZIPNAME FILENAME < temp.tmp >& NUL
  5181. del /q temp.tmp
  5182.  
  5183. (Once again check for a non-zero errorlevel returned by PKZIP.)
  5184.  
  5185. Info about the "extract from .ZIP file" routine in next msg.
  5186.  
  5187. --- ME2
  5188.  * Origin: SeaSoft (Seattle: 206.637-2398; 343/8) (Fidonet 1:343/8.9)
  5189.  
  5190. =-=-=-=-=
  5191.       To:  Bob Campbell               Message #:  10005
  5192.     From:  Mike Arst                  Submitted:  19 May 91 12:25:00  
  5193.  Subject:  .BTM instead of 4ZIP util     Status:  Public
  5194. Received:  No                             Group:  4DOS (89)
  5195.  
  5196. RE: .BTM instead of 4ZIP util - 2nd of 2
  5197. Part 2 - the extraction routine:
  5198.  
  5199. -  If the .ZIP file doesn't exist, announce this and quit.
  5200. -  Use PKUNZIP -T to check the .ZIP file for the file name to
  5201.    extract. If errorlevel is not 0, announce that "member" file
  5202.    doesn't exist, and quit.
  5203. -  If the file to extract now exists on disk, ask user if it's ok
  5204.    to extract and over-write the file. If "no," quit at once.
  5205. -  If "yes," but if the file now on disk is read-only, say so and
  5206.    quit at once.
  5207.  
  5208. Extract the 'member' file from the .ZIP file.
  5209.  
  5210. Check for any PKZIP error. If there is one, say so and quit now.
  5211.  
  5212. Using SED, check for the existence of a comment - the next two
  5213. lines would be a single line in the actual batch file:
  5214.  
  5215. pkzip -vc ZIPNAME FILENAME |
  5216.   SED -n "/^Comment: /s/^Comment: //p" | input %%Comment
  5217.  
  5218. The regular expression prints ONLY the line starting with the
  5219. character string "Comment: ", deletes "Comment: ", and prints the
  5220. rest of the line, piping the output to an environment variable.
  5221.  
  5222. IF "%Comment%" == "" CANCEL
  5223.  
  5224. (If no comment, you're done. Otherwise:)
  5225.  
  5226. keystack @117 13
  5227. describe FILENAME
  5228.  
  5229. The purpose of this is to clear any existing comment from the
  5230. file, **if it now exists on disk**. "@117" is CTRL-END and "13"
  5231. is ENTER. Next step (optional):
  5232.  
  5233. echo <esc>[A<esc>[K<esc>[A
  5234.  
  5235. with "<esc>" being an actual ESC character in the batch file.
  5236. This clears the line that just appeared when the DESCRIBE routine
  5237. was run - keeps the screen cleaner-looking.
  5238.  
  5239. Use SED to extract the file description from the .ZIP file and
  5240. redirect the output to a temporary file name. Again, the
  5241. following would be on TWO lines in the actual batch file:
  5242.  
  5243. pkzip -vc ZIPNAME FILENAME |
  5244.   SED -n "/^Comment: /s/^Comment: //p" > temp.tmp
  5245.  
  5246. (Literally: print ONLY the line containing the comment for that
  5247. particular file, in the process removing the string "Comment: "
  5248. from the *beginning* of the line.)
  5249.  
  5250. Now take the content of the one-line file TEMP.TMP and redirect
  5251. that to the 4DOS 'describe' function for the newly extracted
  5252. file. Then get rid of the temporary file.
  5253.  
  5254. describe %Fname% < temp.tmp >& NUL
  5255. del /q temp.tmp
  5256.  
  5257. Wherever the strings ZIPNAME and FILENAME have appeared in all of
  5258. the foregoing, I have actually used environment variables based
  5259. on the contents of the command line - i.e., %2 and %3.
  5260.  
  5261. These explanations took a good deal more time to write out than
  5262. the batch file takes to execute, believe me. As I say, I'm sure
  5263. this isn't as quick as a dedicated util, but it works and has all the error-
  5264. checking I need. I was especially irritated that the 4ZIP util
  5265. operates in "PKUNZIP -O" mode, and the user has zero control over
  5266. whether an existing file on disk is over-written. This is very un-
  5267. PKUNZIP-like and is downright dangerous. Plus, I found that
  5268. sometimes 4ZIP just plain doesn't extract the file comments correctly, anyway.
  5269.  
  5270. --- ME2
  5271.  * Origin: SeaSoft (Seattle: 206.637-2398; 343/8) (Fidonet 1:343/8.9)
  5272.  
  5273. =-=-=-=-=
  5274.       To:  Bob Campbell               Message #:  10006
  5275.     From:  Mike Arst                  Submitted:  19 May 91 15:45:00  
  5276.  Subject:  (typo)                        Status:  Public
  5277. Received:  No                             Group:  4DOS (89)
  5278.  
  5279. In part 2, I wrote:
  5280.  
  5281. > Use SED to extract the file description from the .ZIP file and
  5282. > redirect the output to a temporary file name. Again, the following
  5283. > would be on TWO lines in the actual batch file:
  5284.  
  5285. That should read: "on ONE line in the actual batch file"
  5286.  
  5287. --- ME2
  5288.  * Origin: SeaSoft (Seattle: 206.637-2398; 343/8) (Fidonet 1:343/8.9)
  5289.  
  5290. =-=-=-=-=
  5291.  
  5292. ------------------------------------------------------------------------
  5293.  
  5294. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  5295.  
  5296.  BBS: ASTRIX          Conference: 4DOS            Imported:  7/11/1991
  5297.   To: JULIAN SOLOMENSKY               Num: 5911       Date:  7/06/1991
  5298. From: DENNIS MCCUNNEY                  Re: 5909       Time:  4:03 am
  5299. Subj: 4DOS Aliases #1                Prvt: N          Read: N
  5300.  
  5301. JS│ Dennis.. Any chance of shooting up your environment variables and
  5302. JS│ aliases?... Hell, I've only got mine set to appr. 600 bytes for the
  5303. JS│ environment variables and under 500 bytes for the aliases.. what have yo
  5304. JS│ got that's taking up so much room???
  5305.  
  5306. ....=pd ....
  5307. ...=pd ...
  5308. ..=pd ..
  5309. .=popd
  5310. A=a:
  5311. AED=edit c:\etc\4alias.rc^unalias *^alias /r c:\etc\4alias.rc
  5312. ALIST=alias|shows
  5313. AMI=pd %sm\ami
  5314. AREF=unalias *^alias /r c:\etc\4alias.rc
  5315. B=b:
  5316. C=c:
  5317. CA=%DEV\cache-em
  5318. CALCULAT=echo : %@eval[%&]
  5319. CANCEL=print /c
  5320. CAPSOFF=%UB\kbd capsoff
  5321. CAPSON=%UB\kbd capson
  5322. CDUU=cdd %UU
  5323. CHAR=setdos /l0
  5324. CHM*OD=attrib
  5325. CSHOW=*cshow +h
  5326. D2=dir /2pv
  5327. D=d:
  5328. DAT=dir *.dat
  5329. DD=pd
  5330. DE=dir /oe
  5331. DFA=df a:
  5332. DFB=df b:
  5333. DFD=df d:
  5334. DFAB=df a: b:
  5335. DFEZ=df %ez2
  5336. DFLB=df %LB
  5337. DFMR=df %MR d:
  5338. DFSM=df %SM
  5339. DFT=df c:\tmp
  5340. DFU=df c:\usr
  5341. DFUB=df %UB
  5342. DFUG=df %UG
  5343. DFUM=df %MAN
  5344. DFUU=iff "%1"=="" then set dir2=c:\tmp^else set dir2=%1^endiff^df %UU
  5345.     %dir2^unset dir2
  5346. DGN=iff "%1"=="" then^select (%DGN\*.*)^else^%DGN\%1 %2 %3 %4 %5^endiff
  5347. DIR=raw on^*dir /ou %&^raw off
  5348. DL=`dir %1|shows`
  5349. DM=dirmatch
  5350. DOCS=select zr (%UM\*.zip)
  5351. DOGD=stackey "Y"^dog d: /fill
  5352. DP=dir /p
  5353. DSD=ds ne d:\
  5354. DSLB=ds ne %LB
  5355. DSUB=ds ne %UB
  5356. DSUU=ds ne %UU
  5357. DW=dir /w
  5358. E=edit
  5359. E4INIT=e c:\etc\4init.btm
  5360. ECFG=e c:\config.sys
  5361. EED=e c:\etc\4set.rc^unset *^set /r c:\etc\4set.rc
  5362. EINIT=e c:\etc\inittab
  5363. EPASS=e c:\etc\passwd
  5364. ERC=e c:\etc\rc.ksh
  5365. EX=vi -e
  5366. F=free
  5367. FA=f a:
  5368. FB=f b:
  5369. FD=f d:
  5370. FDC=set FDSHELL=/s:bd:\ /l:c:\ /e:%env /a:%ali^echo %FDSHELL
  5371. FDD=set FDSHELL=/s:bd:\ /l:d:\ /e:%env /a:%ali^echo %FDSHELL
  5372. FDSHELL=echo FDSHELL %FDSHELL
  5373. FVP=fv %1 /p^pause
  5374. H=history
  5375. HOME=cdd %home
  5376. IN=pd %1^%2&^popd
  5377. INTELEC=pd %sm\intelec
  5378. KB=kbfix2
  5379. L=listp
  5380. L0=setdos /l0
  5381. L1=setdos /l1
  5382. LARN=%UG\larn\larn
  5383. LCD=pushd^*lcd
  5384. LHARC=lha
  5385. LH=lha m /wd:\
  5386. LINE=setdos /l1
  5387. LIST=listp %1 /m
  5388. LL=ls -l
  5389. LLA=ll a:
  5390. LLB=ll b:
  5391. LLD=ll d:
  5392. LLUU=ll %UU
  5393. LP=print /p
  5394. LPSHUT=print /t
  5395. LPSTAT=print
  5396. LSC=ls -c
  5397.  
  5398. < Continued next message >
  5399.  
  5400. <<MESSAGE TOO LONG -- SOME LINES WERE DELETED>>
  5401.                                                                                                   
  5402. PCRelay:DCINFO -> #16 MetroLink (tm) International Network
  5403. 4.10              DC Info Exchange MetroLink International Hub
  5404.      
  5405.  
  5406. ------------------------------------------------------------------------
  5407.  
  5408. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  5409.  
  5410.  BBS: ASTRIX          Conference: 4DOS            Imported:  7/11/1991
  5411.   To: JULIAN SOLOMENSKY               Num: 5912       Date:  7/06/1991
  5412. From: DENNIS MCCUNNEY                  Re: 5909       Time:  4:03 am
  5413. Subj: 4DOS Aliases #2                Prvt: N          Read: N
  5414.  
  5415. JS│ Dennis.. Any chance of shooting up your environment variables and
  5416. JS│ aliases?... Hell, I've only got mine set to appr. 600 bytes for the
  5417. JS│ environment variables and under 500 bytes for the aliases.. what have yo
  5418. JS│ got that's taking up so much room???
  5419.  
  5420. < Continued from previous message >
  5421.  
  5422. M=memory
  5423. MAKEZIP=select pkzip %& (*.*)
  5424. MAN=zr %UM\man.zip
  5425. MAP=mapmem|shows
  5426. MAPV=mapmem /v|shows
  5427. MEGA=pd %MR^megaread^popd
  5428. MAHJONGG=pd %UG\mahjongg^*mahjongg /h /m^popd
  5429. MM=pd %MR
  5430. MO*RE=list /s
  5431. MR=mega
  5432. NAME=ds ne
  5433. ND=md %1^cd %1
  5434. NO=except (%1) %2&
  5435. NYRUN=pd %sm\nyrun
  5436. OV=cd ..\%1
  5437. PCO=%UB\pco /q
  5438. PD=pushd
  5439. PDF=pd %1^df^popd
  5440. PDSM=pd %SM
  5441. PDT=pd c:\tmp
  5442. PDUB=pd %UB
  5443. PDUD=pd %UD
  5444. PDUU=pd %UU
  5445. PEPSET=pd %TELIX^stackey ~M~M~M^pepsetup^popd
  5446. PIK=select /Ou %1 ( %& )
  5447. PK=pkpak
  5448. PKL=pklite
  5449. PKX=pkunpak
  5450. PKARC=pkpak
  5451. PKXARC=pkunpak
  5452. PM=iff not "%1"=="" then^pmap -%1|shows^else pmap|shows^endiff
  5453. POP=popd
  5454. PP=popd
  5455. PRACTICE=timer^vde^timer
  5456. PRT=print
  5457. PRUNE=*prune^cls
  5458. Q=*qm^qedit %1 %2 %3 %4 %5 %6 %7 %8 %9^*qm off
  5459. RAMD=pd d:\^pkunzip -o c:\tmp\ramd^popd
  5460. REN_DATE=rename %1 %@substr[%@name[%1],0,4]%@substr[%_DATE,3,2]
  5461.     %@substr[%_DATE,6,2].%@ext[%1]
  5462. RESET=set /r c:\etc\4set.rc
  5463. RM=rm -i
  5464. RRM=\bin\rm -f
  5465. RON=raw on
  5466. ROF=raw off
  5467. SCOPY=select copy (%1)
  5468. SMOVE=select move (%1)
  5469. SD=df
  5470. SDEL=select del (%1)
  5471. SETL=set|shows
  5472. SHOWS=*list /s
  5473. SHOW=if not "%&"=="" set ltmp=%&^if "%&"=="" select set ltmp=(*.*)
  5474.     ^if "%ltmp%"=="" goto end^*list %ltmp%^set ltmp=
  5475. SWH=%UG\swh
  5476. TD=thedraw
  5477. TESTZIP=for %%v in (%1) do pkunzip -t %v
  5478. THEDRAW=stackey SP^*thedraw
  5479. TFE=%UB\tfe %TELIX\telix.fon
  5480. TIMEIT=timer^%&^timer
  5481. TLX=telix -snull
  5482. TLXLOG=listp %TELIX\logs\telix.use /e
  5483. TMP=pd c:\tmp
  5484. UB=select (%UB\*.*)
  5485. UNCOMPRESS=compress -d
  5486. UNZIP=%UB\pkunzip
  5487. UP=cd ..
  5488. UPKL=pklite -x
  5489. VIEW=vi -R
  5490. VIX=vi -x
  5491. VT=vtree|shows
  5492. WH*ERE=dir /dp
  5493. X=iff %_SHELL==0 then^history>d:\4history.log^endiff^exit
  5494. XT=iff "%@ext[%1]"=="lzh" then^lha x %1^elseiff "%@ext[%1]"=="arj" then
  5495.     ^arj x %1^else^*xt %1^endiff
  5496. ZAP2=erase %&^chkdsk^dir /w
  5497. ZAP=iff isdir %1 then^*del %1^*rd %1^else ^beep^echo Not a directory!^endiff
  5498. ZIP=%UB\pkzip -m -ex -bd:\
  5499.  
  5500. ---
  5501.  ■ SM 1.06 A0129 ■ Jul 4, 1991 ■ R/O Capable ■ Route to ->RUNNINGB
  5502.  
  5503. PCRelay:RUNNINGB -> #3 RelayNet (tm)
  5504.                                                                                                                                
  5505. PCRelay:DCINFO -> #16 MetroLink (tm) International Network
  5506. 4.10              DC Info Exchange MetroLink International Hub
  5507.      
  5508.  
  5509. ------------------------------------------------------------------------
  5510.  
  5511. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  5512.  
  5513.  BBS: ASTRIX          Conference: 4DOS            Imported:  3/05/1992
  5514.   To: DAVE KALWISHKY                  Num: 11692      Date:  3/04/1992
  5515. From: CHRISTOPHER BOLIN                Re: 0          Time:  2:01 am
  5516. Subj: Batch File Wanted              Prvt: N          Read: N
  5517.  
  5518. DK> Sometime ago someone posted a batch file that would rename a file and
  5519.   > increment the extention from .000 to .999.  For example, everyday I get a
  5520.   > file called TEST.ZIP and I want to keep 1000 of these in the same
  5521.   > directory, the best way is to modify the file file extention to test.001,
  5522.   > test.002, test.003 and so on..  Someone once before posted a batch file to
  5523.   > do this..
  5524.  
  5525. As ugly as it is...here you go:
  5526.  
  5527. @ECHO OFF
  5528. if "%1" == "" goto bad
  5529. if NOT "%@ext[%1]" == "" goto bad
  5530. iff exist d:\down\%1.qwk then
  5531.   Echo %@upper[%1] mail packet found!
  5532.   pushd
  5533.   move /Q d:\down\%1.qwk c:\olx\qwkmail
  5534.   Echo Working...
  5535.   cdd c:\olx\qwkmail
  5536.   set File1=%1.q20
  5537.   if exist %File1 del /Q %File1
  5538.   set i=20
  5539.   gosub rQWK
  5540.   ren /Q %1.qwk %1.q00
  5541.   popd
  5542.   popd *
  5543.   unset i^unset j
  5544.   unset File1^unset File2
  5545.   Echo 
  5546.   Echo ...Fini
  5547. else
  5548.   Echo %@upper[%1] mail packet NOT found...
  5549. endiff
  5550.   OLX
  5551. EXIT
  5552.  
  5553. :rQWK
  5554.   set j=%@eval[%i - 1]
  5555.   if %j LT 10 set j=0%j
  5556.   if %i LT 10 set i=0%i
  5557.   set File1=%1.q%i
  5558.   set File2=%1.q%j
  5559.   if exist %File2 ren /Q %File2 %File1
  5560.   set i=%@eval[%i - 1]
  5561.   if %i == 0 return
  5562.   goto rQWK
  5563.  
  5564. :bad
  5565.   echo You must specify a filename without extension...
  5566.   quit
  5567.  
  5568. Hope it helps,
  5569. Christopher Bolin
  5570.  
  5571. ---
  5572.  ■ SPEED 1.10 [NR] ■ Gee officer, I just wondered how fast SPEED READ was.
  5573.  
  5574. PCRelay:EMERALD -> #644 RelayNet (tm)
  5575.                                                                               
  5576.  
  5577. ------------------------------------------------------------------------
  5578.  
  5579. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  5580.  
  5581.  BBS: ASTRIX          Conference: 4DOS            Imported:  3/06/1992
  5582.   To: PAUL CONANT                     Num: 11683      Date:  3/01/1992
  5583. From: JAY HANNA                        Re: 0          Time:  4:05 pm
  5584. Subj: GREAT SERVICE                  Prvt: N          Read: N
  5585.  
  5586. PC>│JH> I have over 4,000 bytes of aliases, the kind that pops into your
  5587. PC>│JH> head at the least expected times
  5588.  
  5589. PC>Maybe you ought to post some of those for us new 4DOS users.  I
  5590. PC>find the best way to learn to use alias is fool around with someone
  5591.  
  5592. Here are a couple I use to change directories without alot of typing:
  5593.  
  5594. cu=cd\util^cls
  5595. cx=cd\xxx^dir
  5596.  
  5597. I'm always copying or moving files to my temp directory designated xxx.  I
  5598. managed this one with help from another user.  I'm not sure if the [AT] sign
  5599. or carriage return will be passed along so the first character is [AT sign],
  5600. and the last two characters will be the up arrow followed my the letter R.
  5601. Anyway all I need to do is hold down the ALT key and tap C; carriage return
  5602. is added automatically:
  5603.  
  5604. @ALT-C=c:\xxx^r
  5605.  
  5606. I like to make backups of critical files, and I want to do it easily.
  5607. This alias is all on one line.  Here's how:
  5608.  
  5609. auto=copy c:\autoexec.bat c:\autoexec.bak^copy c:\autoexec.bak
  5610. c:\re-boot\standard.bat^copy c:\config.sys c:\config.bak^copy
  5611. c:\config.bak c:\re-boot\standard.sys^copy c:\4dos\4dos.ini
  5612. c:\4dos\ini.bak^copy c:\4dos\alias.lst c:\4dos\alias.bak
  5613.  
  5614. The following alias is one I got from the conference.  It will del everything
  5615. except for %1, and donsen't wait for a y/n response.  I often use it to del
  5616. *.* by omitting %1.  For those of you that don't understand the uses of %
  5617. in batch files or aliases; lets say I want to del everything in the current
  5618. dir. execept [my.doc], the syntax would be:  delx my.doc, with my.doc being
  5619. represented my %1.
  5620.  
  5621. delx=except (%1) del *.* /y
  5622.  
  5623. I'd like to see additional aliases myself, let's see some of your work, or
  5624. others work <g>.
  5625. ---
  5626.  ■ SLMR 2.1 ■ Beware of Programmers who carry screwdrivers.
  5627.  
  5628. PCRelay:ZED -> #200 RelayNet (tm)
  5629.                                     
  5630.  
  5631. ------------------------------------------------------------------------
  5632.  
  5633. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  5634.  
  5635.  BBS: ASTRIX          Conference: 4DOS            Imported:  3/06/1992
  5636.   To: JAY HANNA                       Num: 11694      Date:  3/05/1992
  5637. From: DAVE LEMIRE                      Re: 11150      Time:  8:19 am
  5638. Subj: GREAT SERVICE                  Prvt: N          Read: N
  5639.  
  5640. JH> The following alias is one I got from the conference.  It will del everythin
  5641.   > except for %1, and donsen't wait for a y/n response.  I often use it to del
  5642.   > *.* by omitting %1.  For those of you that don't understand the uses of %
  5643.   > in batch files or aliases; lets say I want to del everything in the current
  5644.   > dir. execept [my.doc], the syntax would be:  delx my.doc, with my.doc being
  5645.   > represented my %1.
  5646.  
  5647. JH> delx=except (%1) del *.* /y
  5648.  
  5649. I've got a slightly different spin on DELX -- mine got a bit more
  5650. bulletproof after I accidently invoked it with no arguments and
  5651. blew away an entire directory!
  5652.  
  5653. KEEP=`iff "%1!" == "!" then^beep^else^except (%&) del /y *.*^ENDIFF`
  5654.  
  5655. This version's a little safer, and also lets you specify multiple
  5656. file names/types to keep.
  5657.  
  5658.     Dave Lemire
  5659. ---
  5660.  ■ OLX 2.2 ■ Overdrawn?  but I still have checks left!!
  5661.  ■ KMail 2.91i The DC Information Exchange
  5662.                                                                                                                             
  5663. PCRelay:DCINFO -> #16 MetroLink (tm) International Network
  5664. 4.10              DC Info Exchange MetroLink International Hub
  5665.      
  5666.  
  5667. ------------------------------------------------------------------------
  5668.  
  5669. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  5670.  
  5671.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  3/08/1992
  5672.   To: REX CONN                        Num: 36         Date:  3/05/1992
  5673. From: SYLVAIN BEAUREGARD               Re:            Time: 12:12 pm
  5674. Subj: THANKS FOR %@SELECT            Prvt: N          Read: N
  5675.  
  5676. Hi Rex!
  5677.  
  5678. I was already a fan of 4DOS.  A few days ago I just discovered THE 
  5679. function within 4DOS who made me a 4dos addict for the rest of my 
  5680. life: %@SELECT.
  5681.  
  5682. With this little function, I wrote an alias which is in fact my 
  5683. phone directory.
  5684.  
  5685. Here's the alias, named TEL:
  5686.  
  5687.  set tel=%@select[C:\4dos40\tel.lst,10,10,20,70,Phone dir]
  5688.  If "%tel%n"=="n" QUIT
  5689.  ECHO AT DT %@WORD[0,%TEL%] > COM2
  5690.  echo Dialing: e[0;37;44;7m%TEL%e[0;37;44;1m
  5691.  pause Press any key to hang up.
  5692.  ECHO AT H0 > COM2
  5693.  set tel=
  5694.  
  5695. My C:\4DOS40\TEL.LST is simply an ASCII file, in this format:
  5696.  
  5697. XXX-XXXX - Name (office/modem/home)
  5698.  
  5699. Hope it will be useful to others.
  5700.  
  5701. Sylvain Beauregard
  5702.  
  5703. --- TMail v1.27
  5704.  * Origin: Le Relais BBS - Montreal, PQ, CN - 514/383-1567 (1:167/211)
  5705. 
  5706. ------------------------------------------------------------------------
  5707.  
  5708. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  5709.  
  5710.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  3/10/1992
  5711.   To: ALL                             Num: 75         Date:  3/07/1992
  5712. From: DAYTON LIVINGSTON                Re:            Time:  6:24 pm
  5713. Subj: Timing doors                   Prvt: N          Read: N
  5714.  
  5715. Ho folkses!
  5716.  
  5717. Here's a little tip for some of the other SysOps on this echo.
  5718.  
  5719. On my BBS, there's some game doors that I don't really want people playing
  5720. during certain hours (because those hours as when I try to take care of any
  5721. "business" stuff).  With the amazing flexibility and power of 4DOS, I found
  5722. a quick & easy way to avoid this little problem without having to go to an
  5723. outside door-management program.  I just include this little segment in
  5724. the BAT file that calls the door...
  5725.  
  5726. IF %@TIME[%_TIME] GT 64800 .AND. %@TIME[%_TIME] LT 72000 (
  5727.   ECHO Game DOORs Off-Line from 6:00PM to 8:00PM >COM2
  5728.   ECHO Please call back later to play your game. >COM2
  5729.   C:\BAT\bbs.bat )
  5730.  
  5731. Okay, for those of you who can't figure it out (hah!), the first line is
  5732. just an IF that checks the current time and counts the seconds since
  5733. midnight.  If over 64800 (6:00 PM) and under 72000 (8:00 PM), then it
  5734. executes the following lines, which are read as one command for the IF
  5735. because of the command grouping (the open parentheses at the end of the
  5736. line)
  5737.  
  5738. The second and thrid lines echo the text to COM2, where my modem resides. 
  5739. This informs the caller as to why the door doesn't work.
  5740.  
  5741. The last line is just the name of the BBS batch file, which calls the BBS
  5742. back online.
  5743.  
  5744. Simple.  If anyone seens any possible problems with it, please let me
  5745. know!  It SEEMS to work just dandy, but then, I've heard that song before! 
  5746. :)  Hope it helps someone else out there!
  5747.  
  5748. - Dayton
  5749.  
  5750. --- D'Bridge 1.30/071141
  5751.  * Origin: Animal Pharm BBS, Holbrook AZ. 602-524-2032 HST DS (1:304/100)
  5752.  
  5753. ------------------------------------------------------------------------
  5754.  
  5755. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  5756.  
  5757.  BBS: ASTRIX          Conference: 4DOS            Imported:  3/12/1992
  5758.   To: JAY HANNA                       Num: 11812      Date:  3/05/1992
  5759. From: DAVE RIETZ                       Re: 11150      Time:  8:15 pm
  5760. Subj: GREAT SERVICE                  Prvt: N          Read: N
  5761.  
  5762. │JH>                                                                 │
  5763. │JH> I'd like to see additional aliases myself, let's see some of you│
  5764. │JH> others work <g>.                                                │
  5765. ╘════════════════════════════════════════════════════════════════════╛
  5766.  
  5767.     Some of my most used are extremely simple.
  5768.   I abhor typing :\, so I have a, b, c etc aliases (used to be
  5769. batch files) with replaceable parameters.
  5770.  
  5771. c c:^cd c:\%1^%2 %3 %4 %5 %6
  5772.  
  5773.   This allows me to get to the root directory with "c <enter>", or
  5774. to a subdirectory (or nested directories... whatever will fit into
  5775. %1.  Then, call a program when I get where I'm going, and feed the
  5776. program switches or filenames.  Something like:
  5777.  
  5778.     c wp wp a:letter.doc /m=hpiii
  5779.  
  5780.     c wp logs to the wp subdirectory, %2 (second wp) loads
  5781. wordperfect which logs to drive a to retrieve letter.doc, and
  5782. /m=hpIII is a macro for loading the HPIII printer driver.
  5783.  
  5784.    With cdpath set in my 4dos.set file such as:
  5785.  
  5786. cdpath=c:\;d:\;c:\qt;c:\wp;d:\acad;d:\milcom;d:\pics;d:\wp;
  5787.  
  5788.    I can navigate from drive to drive directly to a subdirectory
  5789. with just . subname.  This is a lot like the above... but simpler.
  5790.  
  5791. . %1\^%2 %3 %4
  5792.  
  5793.    Then, of course, an alias such as .. cd..  and variations on
  5794. that theme.
  5795.  
  5796.    I guess I have more that the oft expressed 4000 bytes of
  5797. aliases... I have around 11000 bytes.  But then, I have over 250
  5798. directories with over 8000 files spread out over two 210 meg HD's.
  5799. Perhaps that explains the above simple aliases being my favorites.
  5800.  
  5801.    I'll say one thing for SURE... when I get on a machine with
  5802. plain dumb ol' DOS I feel both naked and about as dumb as that
  5803. machine!
  5804. ---
  5805.  ■ MegaMail 2.10 #574:Jes waitin' fer another HUGO!
  5806.                                                                         
  5807. PCRelay:ASYLUM -> #962 MetroLink (tm) International Network
  5808. 4.11              Asylum BBS Metrolink Regional (803) 763-9335
  5809.     
  5810.  
  5811. ------------------------------------------------------------------------
  5812.  
  5813. Echo Flag : N       Permanent: N       Export: N      Personal Read: N
  5814.  
  5815.  BBS: ASTRIX          Conference: 4DOS            Imported:  3/14/1992
  5816.   To: LOREN OLSON                     Num: 11819      Date:  3/13/1992
  5817. From: DON BEILFUSS                     Re: 11814      Time: 11:13 am
  5818. Subj: 4DOS & MEMORY & MAILREADE      Prvt: N          Read: N
  5819.  
  5820. Sure... here goes...
  5821.  
  5822. :
  5823. :  Aliases defined for Astrix
  5824. :
  5825. :  Keystroke aliases
  5826. :
  5827. @F5=@d:\bat\expand<Ctrl-X>r
  5828. @F2=c:\dos5\help<Ctrl-X>r
  5829. @F4=*.*
  5830. @F11=cash /write=on<Ctrl-X>r
  5831. @F12=exit<Ctrl-X>r
  5832. :
  5833. :
  5834. unalias *
  5835. aliased q c:\4dos4\aliases~unalias *~alias /r c:\4dos4\aliases
  5836. set iff "%1"=="" then *set /p ~ else *set %& ~ endiff
  5837. showme `echo %[%1]`
  5838. :
  5839. :  General Hi-Use, building blocks (aliases used by aliases)
  5840. :
  5841. dr c:\command /c
  5842. in pushd %1~%2&~popd
  5843. vv `%& | list /s`
  5844. :
  5845. :  Directory manipulation aliases
  5846. :
  5847. '' pushd ..
  5848. ' popd
  5849. \=cd\
  5850. .*..........=cd.%0\%1
  5851. dd pushd
  5852. du popd
  5853. nd md %1~cd %1
  5854. ovr cd ..\%1
  5855. up cd ..
  5856. xd md %1~cd %1~unzip ..\%1
  5857. swapd=setlocal~set currentd1=%_cwd~popd~set currentd2=%_cwd~cd
  5858. %currentd1~pushd %currentd2~endlocal
  5859. :
  5860. :  Directory listing aliases
  5861. :
  5862. d2  dir /2pv
  5863. da  dir /a:-h-s-d /p
  5864. de  dir /oe
  5865. dia dir a:
  5866. dib dir b:
  5867. dl  dir /a:-h-s-d %& | list
  5868. ds  dir /adp
  5869. dx  dir /p *.[ceb][oxat][me]
  5870. ss s /4
  5871. :
  5872. :  History aliases
  5873. :
  5874. ?? alias | list /sw
  5875. die del c:\logs\history.lst~history > c:\logs\history.lst
  5876. hi*story *history
  5877. live history /r c:\logs\history.lst
  5878. :
  5879. :  Command renaming for convenience aliases
  5880. :
  5881. ansi dvansi
  5882. e exit
  5883. format in c:\usr\format formatf
  5884. list d:\lib\listp.com
  5885. 4l *list
  5886. l listp
  5887. map pmap %1 | list /s
  5888. mm mapmem
  5889. omap d:\lib\map
  5890. omni in c:\bin\omni ou defkeys
  5891. :
  5892. :  File manipulation aliases
  5893. :
  5894. bak del *.bak
  5895. sdel select del (%1)
  5896. zap2 erase %&~chkdsk~dir /w
  5897. :
  5898. :  File attribute manipulation aliases
  5899. :
  5900. addsys attrib +s
  5901. adir attrib
  5902. delsys attrib -s
  5903.  
  5904. continued in next message...
  5905.                                            
  5906.  
  5907. ------------------------------------------------------------------------
  5908.  
  5909. Echo Flag : N       Permanent: N       Export: N      Personal Read: N
  5910.  
  5911.  BBS: ASTRIX          Conference: 4DOS            Imported:  3/14/1992
  5912.   To: LOREN OLSON                     Num: 11820      Date:  3/13/1992
  5913. From: DON BEILFUSS                     Re: 11814      Time: 11:18 am
  5914. Subj: 4DOS & MEMORY & MAILREADE      Prvt: N          Read: N
  5915.  
  5916. And away we go again...
  5917.  
  5918. :
  5919. :  File attribute manipulation aliases
  5920. :
  5921. addsys attrib +s
  5922. adir attrib
  5923. delsys attrib -s
  5924. hide attrib +h
  5925. read attrib +r
  5926. unhide attrib -h
  5927. write attrib -r
  5928. :
  5929. :  Program starting aliases
  5930. :
  5931. comm in c:\qmx qmodem
  5932. com3 in c:\qmodem3 qmodem
  5933. cshow in e:\cshow *cshow +sP1
  5934. ed pe2 /pc:\etc\help\pe2long.pro
  5935. font in c:\usr\fonts vgafont
  5936. font1 in c:\usr\fonts vgx fresno.fnt
  5937. font2 in c:\usr\fonts vgx sanserif.fnt
  5938. geo in c:\usr\geo geoclk
  5939. gshop in c:\usr\gws gws
  5940. ncash in c:\bin\nu ncache
  5941. nu in c:\bin\nu norton
  5942. pcg in c:\usr\pcglobe pcglobe
  5943. pct*ools in c:\bin\pctools *pctools /nf /bf /25
  5944. pcu in c:\usr\pcusa pcusa
  5945. pdx in f:\pdx paradox -emk 512
  5946. rlychek dir e:\transfer\hold
  5947. w in f:\wp51~wp %1
  5948. WinR in c:\win3 *win /r
  5949. WinS in c:\win3 *win /s
  5950. :
  5951. :  Tame aliases
  5952. :
  5953. tamei tame-res~tame /timepoll
  5954. tames tame /status
  5955. tameu tame /uninstall
  5956. tamex tame-res~tame /DVAWARE /NoKeyIdle /NoKeyPoll /NoTimePoll /FREQ:50
  5957. :
  5958. :  Cache aliases
  5959. :
  5960. cash pc-cache
  5961. cache in c:\ktrak superpck
  5962. :
  5963. :  Special purpose aliases
  5964. :
  5965. packer pcbpack /fast /killbak /killdups /date:%2 /area:%1
  5966. tools was b4 ~ font1 ~ tamex
  5967. workstat dmd cdefg /q
  5968. work mv *.* e:\work
  5969. :
  5970. :  Prompts and Fun stuff
  5971. :
  5972. bell beep 1040 4 ~ beep 1176 4 ~ beep 932 4 ~ beep 466 4 ~ beep 698 6
  5973. lprom prompt $p-($z)-$g
  5974. pset prompt $e[0m$e[32m$p-($z)-$e[37m$g$e[36m
  5975. :
  5976. :  Not otherwise categorized
  5977. :
  5978. tex `timer~%1 %&~timer`
  5979.  
  5980. That ought to give you enough to chew on for a few days...  My favorite
  5981. is "bell".  Good luck and let me know if you need any of them explained.
  5982. Most are fairly short, simple, and easily understood.
  5983.                                                                                                    
  5984.  
  5985. ------------------------------------------------------------------------
  5986.  
  5987. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  5988.  
  5989.  BBS: ASTRIX          Conference: 4DOS            Imported:  3/14/1992
  5990.   To: ALL                             Num: 11835      Date:  3/11/1992
  5991. From: MARK GUTHRIE                     Re: 0          Time:  5:41 pm
  5992. Subj: PRNTFILE.BTM                   Prvt: N          Read: N
  5993.  
  5994.  
  5995. A while back I noticed a few people said they were using 4PRINT, a
  5996. program for printing program listings in landscape mode.  It works
  5997. great, but since it begins each new file listing on a new page, it
  5998. can waste some paper if you are printing short files.
  5999.  
  6000. Here is a short batch file I wrote to combine several small files
  6001. into one large file, with a simple header at the front and form
  6002. feeds to seperate the files.  When used with 4PRINT, each file
  6003. begins on a new column with the filename as a header.
  6004.  
  6005. -------------------------[ PRNTFILE.BTM ]--------------------------
  6006.  
  6007. @echo off
  6008.  
  6009. iff "%1"=="" then
  6010.     echo PRNTFILE (dest) (file1) (file2) ...
  6011.     quit
  6012. endiff
  6013.  
  6014. set out=%1
  6015. set dbline=══════════════════════════════════════════════════
  6016.  
  6017.  
  6018. :loop
  6019. for %i in (%2) gosub print
  6020. shift
  6021. if "%2" NE "" goto loop
  6022.  
  6023. unset out
  6024. unset dbline
  6025. quit
  6026.  
  6027. rem
  6028. rem  Print file specified in %i with filename at top of first
  6029. rem  page and form feed at the end of the last page.
  6030. rem  Send output to %out.
  6031. rem
  6032.  
  6033. :print
  6034. set len1=%@len[%i]
  6035. set lin1=%@substr[%dbline,0,%len1]
  6036. set upname=%@upper[%i]
  6037.  
  6038. echo ╔═%lin1%═╗  >>& %out
  6039. echo ║ %upname ║ >>& %out
  6040. echo ╚═%lin1%═╝  >>& %out
  6041. echo.        >>& %out
  6042.  
  6043. type %upname >>& %out
  6044. echo f      >>& %out
  6045.  
  6046. unset len1
  6047. unset lin1
  6048. unset upname
  6049.  
  6050. return
  6051.  
  6052. ------------------------------------------------------------------
  6053.  
  6054.  * SLMR 2.0 * If it isn't Scottish ... it's CRRAAAPPP!
  6055.                            
  6056. PCRelay:DCINFO -> #16 MetroLink (tm) International Network
  6057. 4.10              DC Info Exchange MetroLink International Hub
  6058.      
  6059.  
  6060. ------------------------------------------------------------------------
  6061.  
  6062. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  6063.  
  6064.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  3/14/1992
  6065.   To: KEVIN COATES                    Num: 125        Date:  3/12/1992
  6066. From: DAVE MUNHOLLON                   Re:            Time:  1:03 pm
  6067. Subj: Help!                          Prvt: N          Read: N
  6068.  
  6069. * Replying to a Message From Kevin Coates To All.
  6070. * Quoting Kevin Coates...
  6071.  
  6072.  KC> I would like to be able to automate some BBS functions at the end of
  6073.  KC> the month (reports, file purges etc.). Is there any way I can use a
  6074.  KC> 4dos batch/btm file to detect when the 1st of the month rolls around?
  6075.  KC> How could this be done? Any working samples would be appreciated.
  6076.  
  6077. I use the below .btm to rename my logfile.zip at the end of each month. You
  6078. would most likely only be interested in the first line that detects that it
  6079. is the first day of the month.
  6080.  
  6081.  
  6082. iff %@substr[%_date,3,2]=01 then
  6083.  if %@substr[%_date,0,1]=1 set %hold=%@substr[%_date,0,2]
  6084.  if %@substr[%_date,0,1]=0 set %hold=%@substr[%_date,1,1]
  6085.  if %@substr[%_date,0,2]=01 goto setdec
  6086.  set month=%@substr[janfebmaraprmayjunjulaugsepoctnov,%@eval[(%hold-1)*3],3]
  6087.  set year=%@substr[%_date,6,2]
  6088.  goto rename
  6089.  :setdec
  6090.  set month=dec
  6091.   set year=(%@substr[%_date,6,2]-1)
  6092.  :rename
  6093.   ren c:\logfiles\logfiles.zip %month-%year.zip
  6094.  
  6095.  
  6096. I'm pretty sure there is probably a much simpler way to write this whole
  6097. thing but it works.
  6098.  
  6099.  
  6100.                                     -=*Dave
  6101.  
  6102. ---
  6103.  * Origin: 4DOS, THE command proccessor!! (FidoNet 1:128/86)
  6104.  
  6105. ------------------------------------------------------------------------
  6106.  
  6107. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  6108.  
  6109.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  3/14/1992
  6110.   To: KEVIN COATES                    Num: 131        Date:  3/12/1992
  6111. From: RON WESTLAKE                     Re:            Time: 10:35 am
  6112. Subj: Help!                          Prvt: N          Read: N
  6113.  
  6114.  > I would like to be able to automate some BBS functions at the end of the
  6115.  > month (reports, file purges etc.). Is there any way I can use a 4dos
  6116.  > batch/btm file to detect when the 1st of the month rolls around? How
  6117.  > could this be done? Any working samples would be appreciated.
  6118.  
  6119. : for USA date format
  6120.  
  6121. iff %@substr[%_date,3,2] == 01 then
  6122.     put BBS functions here...
  6123. endiff
  6124.  
  6125. Be sure to run it in a 'one time' daily event.
  6126.  
  6127. Ron
  6128.  
  6129. ---
  6130.  * Origin: GENESIS * Portland, OR USA * (503)257-2462 * 
  6131. (1:105/18@fidonet.org)
  6132.  
  6133. ------------------------------------------------------------------------
  6134.  
  6135. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  6136.  
  6137.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  3/14/1992
  6138.   To: KEVIN COATES                    Num: 132        Date:  3/12/1992
  6139. From: JOE RECKER                       Re:            Time:  3:57 pm
  6140. Subj: Help!                          Prvt: N          Read: N
  6141.  
  6142.  KC> I would like to be able to automate some BBS functions at the end of the
  6143.  KC> month (reports, file purges etc.). Is there any way I can use a 4dos
  6144.  KC> batch/btm file to detect when the 1st of the month rolls around? How
  6145.  KC> could this be done? Any working samples would be appreciated.
  6146.  
  6147. I have a Daily.Btm that executes every night at midnight.  BUT on the 1st of
  6148. the month and on Friday's I have a few things I want to do.  So I put them in
  6149. different files and did them as such:
  6150.  
  6151. if %_date=01-01-92 call monthly.btm
  6152. if %_date=02-01-92 call monthly.btm
  6153. if %_date=03-01-92 call monthly.btm
  6154. if %_date=04-01-92 call monthly.btm
  6155. if %_date=05-01-92 call monthly.btm
  6156. if %_date=06-01-92 call monthly.btm
  6157. if %_date=07-01-92 call monthly.btm
  6158. if %_date=08-01-92 call monthly.btm
  6159. if %_date=09-01-92 call monthly.btm
  6160. if %_date=10-01-92 call monthly.btm
  6161. if %_date=11-01-92 call monthly.btm
  6162. if %_date=12-01-92 call monthly.btm
  6163. if %_dow=Fri call weekly.btm
  6164. //rest of daily maintenance batch here//
  6165.  
  6166. Joe
  6167.  
  6168. --- Maximus 2.01wb
  6169.  * Origin: Combat Override BBS (1:3617/3)
  6170.  
  6171. ------------------------------------------------------------------------
  6172.  
  6173. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  6174.  
  6175.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  3/14/1992
  6176.   To: MORRIS TURPIN                   Num: 116        Date:  3/10/1992
  6177. From: SYLVAIN BEAUREGARD               Re:            Time:  5:24 pm
  6178. Subj: THANKS FOR %@SELECT            Prvt: N          Read: N
  6179.  
  6180. Hi Morris!
  6181.  
  6182.  MT> SB> Hope it will be useful to others.
  6183.  MT>Sure is!  Thanks for sharing it.
  6184.  
  6185. Glad to see it will serve you also.  Here is another for you and all other
  6186. folks:
  6187.  
  6188. Alias name: ESET
  6189.  
  6190.  Iff %1=a then
  6191.   alias >! D:alias.lst
  6192.   *ESET /A %@WORD[0,%@select[D:alias.lst,5,4,20,76,Actual alias list]]
  6193.   del D:alias.lst /Q
  6194.  ELSE
  6195.   set >! D:\env.lst
  6196.   *ESET %WORD[0,%@select[D:env.lst,10,10,20,70,Actual envronment variables]]
  6197.   del D:\env.lst /Q
  6198.  endiff
  6199.  
  6200. What it does?  When I enter ESET A it shows me all my aliases and ask which
  6201. one I want to change, then I press ENTER and edit it.  If I only enter ESET,
  6202. it shows me my environment, and so on.
  6203.  
  6204. Why doing it this way?  Because I use a few environmental variables with
  6205. identical name as my aliases, so I forgot everytime to specify the /A
  6206. parameter of ESET command.  Another use is simply to be sure of the spelling
  6207. and/or contents of the alias/variable you want to edit or delete.
  6208.  
  6209. Two little alias doing great things to me, just relying on this wonderful
  6210. function %@SELECT.
  6211.  
  6212. Sylvain Beauregard, Montreal, Quebec, Canada
  6213.  
  6214.  
  6215. --- TMail v1.27
  6216.  * Origin: Le Relais BBS - Montreal, PQ, CN - 514/383-1567 (1:167/211)
  6217.  
  6218. ------------------------------------------------------------------------
  6219.  
  6220. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  6221.  
  6222.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  3/14/1992
  6223.   To: SYLVAIN BEAUREGARD              Num: 119        Date:  3/11/1992
  6224. From: STANTON HERSHMAN                 Re:            Time:  2:33 pm
  6225. Subj: THANKS FOR %@SELECT            Prvt: N          Read: N
  6226.  
  6227. In a msg on <Mar 05 12:12>, Sylvain Beauregard of 1:167/211 writes:
  6228.  
  6229.  SB>  
  6230.  SB>  set tel=%@select[C:\4dos40\tel.lst,10,10,20,70,Phone dir]
  6231.  SB>  If "%tel%n"=="n" QUIT
  6232.  SB>  ECHO AT DT %@WORD[0,%TEL%] > COM2
  6233.  SB>  echo Dialing:  e[0;37;44;7m%TEL% e[0;37;44;1m
  6234.          the CTRL-X ^        and here ^ got stripped.  Works like a charm
  6235. now.
  6236. Through the whole shootin' match up on the ramdrive.  Real fast.
  6237. Had some problems with the colors, but finally got that fixed, too.
  6238.  SB>  pause Press any key to hang up.
  6239.  SB>  ECHO AT H0 > COM2
  6240.  SB>  set tel=
  6241.  SB>  
  6242.  
  6243. Again, nice job!
  6244. CHANGES I MADE:
  6245.  
  6246. @echo off
  6247. echo e[0;44;36;1me[2J     ;set bright cyan on blue, cls
  6248. cls
  6249. set tel=%@select[H:\tel.lst,10,10,20,70,Phone dir]
  6250. if "%tel%n"=="n" goto CLEAR  ;if quit set colors to default
  6251. ECHO ATDT %@WORD[0,%TEL%] > COM2
  6252. echo Dialing: e[0;37;44;7m%TEL%e[0;37;44;1m
  6253. echo e[33;441m             ;set colors back to default bright yellow on blue
  6254. pause Press any key......
  6255. cls
  6256. ECHO AT H0 > COM2
  6257. goto END
  6258. :CLEAR
  6259. echo e[33;441m
  6260. cls
  6261. :END
  6262. set tel=
  6263.  
  6264.  <Stanton>
  6265.  
  6266. --- msgedsq 2.0.5
  6267.  * Origin: Cat's_Meow <From_The_Oldest_City_In_The_USA> (1:3620/8)
  6268.  
  6269. ------------------------------------------------------------------------
  6270.  
  6271. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  6272.  
  6273.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  3/14/1992
  6274.   To: SYLVAIN BEAUREGARD              Num: 133        Date:  3/12/1992
  6275. From: DAVID POWERS                     Re:            Time: 10:07 am
  6276. Subj: Thanks for %@select            Prvt: N          Read: N
  6277.  
  6278. Hi Sylvain!
  6279.  
  6280. >Glad to see it will serve you also.
  6281.  
  6282. It does, it does, I like it a lot.  Here it is with a name search feature:
  6283.  
  6284.  set phdir=(your phone dir, w/path)
  6285.  ::if a parameter is entered, look for it in the phone dir.
  6286.  iff %@len[%1] gt 0 then
  6287.    set phtemp=%temp\ph.tmp
  6288.    ::fgrep is a fast version of DOS Find -- it also produces
  6289.    :: exit codes, so you can use "||" (conditional command) to
  6290.    :: dial from the match list when matches are found.
  6291.    :: "if %? == 1" would do just as well.  || is faster.
  6292.    fgrep -x %1 < %phdir > %phtemp || set phdir=%phtemp
  6293.  endiff
  6294.  set tel=%@select[%phdir,5,9,15,70]
  6295.  iff %@len[%tel] gt 0 then
  6296.    ECHO AT M1 L0 DT %@word[0,%tel] > com1
  6297.    ::replace the <^X>'s with real alt-24's.
  6298.    pause Dialing: %tel<^X>r<^X>nPress any key to hang up.
  6299.    ECHO AT H0 M0 > com1
  6300.  endiff
  6301.  if "%phtemp" ne "" del/q %phtemp
  6302.  uns tel phdir phtemp
  6303.  
  6304. >Here is another for you and all other folks:
  6305.  
  6306. >Alias name: ESET
  6307.  
  6308. Thanks, I'll probably use that, too. :)
  6309.  
  6310.  * SLMR 2.1a * There's a lady who's sure ... oh, you know that one?
  6311.  
  6312.  
  6313. --- TosScan 1.00
  6314.  * Origin: Coconino County BBS *415-861-8290* San Francisco, CA (1:125/28)
  6315.  
  6316. ------------------------------------------------------------------------
  6317.  
  6318. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  6319.  
  6320.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  3/16/1992
  6321.   To: SYLVAIN BEAUREGARD              Num: 144        Date:  3/13/1992
  6322. From: FURLAN PRIMUS                    Re:            Time:  1:46 pm
  6323. Subj: THANKS FOR %@SELECT            Prvt: N          Read: N
  6324.  
  6325. thanks for the TEL alias, i have changed it a bit for my own purposes:
  6326. (it is a bit longer in this version so i can't use it as an alias...)
  6327.  
  6328. setlocal
  6329. cls bri whi on blu
  6330. set tel=%@select[C:\4dos\tel.lst,5,20,20,60,Phone dir]
  6331. If "%tel%n"=="n" QUIT
  6332. set number=%@word[0,%tel]
  6333. set taillen=%@eval[%@len[%tel] - %@len[%number]]
  6334. set tailbeg=%@index[%tel,%@word[2,%tel]]
  6335. set tail=%@substr[%tel,%tailbeg,%taillen]
  6336. drawbox 3 1 5 %@eval[%@len[%tel] + 17] 2 bri yel on gre fill cya sha
  6337. scrput 4 3 bla on cya Dialing:
  6338. scrput 4 12 red on cya %number
  6339. scrput 4 27 bri yel on cya %tail
  6340. ECHO AT DT %number > COM2
  6341. screen 0 3
  6342. pause gently fondle any key to hang up....
  6343. ECHO AT H0 > COM2
  6344. screen 8 0
  6345. endlocal
  6346.  
  6347. fl
  6348.  
  6349.  
  6350. --- msgedsq 2.0.5
  6351.  * Origin: Being weird isn't enough. (1:141/590)
  6352.  
  6353. ------------------------------------------------------------------------
  6354.  
  6355. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  6356.  
  6357.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  3/17/1992
  6358.   To: DAVID POWERS                    Num: 167        Date:  3/13/1992
  6359. From: SYLVAIN BEAUREGARD               Re:            Time:  9:38 pm
  6360. Subj: THANKS FOR %@SELECT            Prvt: N          Read: N
  6361.  
  6362. Hi David!
  6363.  
  6364. >It does, it does, I like it a lot.  Here it is with a name search
  6365.  
  6366. Thanks a lot for this enhancement, I'll use it too.  I liked the idea of a
  6367. variable to place the phone list.
  6368.  
  6369. I had another idea.  We could easily create 2 lists (one for friends and the
  6370. other for business) and name them TEL-LIST.F and TEL-LIST.B, and simply put a
  6371. parameter on command line as F or B to choose one list or the other, with
  6372. something like this:
  6373.  
  6374. >set tel=%@select[%phdir.%1,5,9,15,70]
  6375.  
  6376. With a variable equal to "TEL-LIST", we could call TEL F ou TEL B.
  6377.  
  6378. Bye!
  6379.  
  6380. Sylvain Beauregard, Montreal, Quebec, Canada
  6381.  
  6382.  
  6383. --- TMail v1.27
  6384.  * Origin: Le Relais BBS - Montreal, PQ, CN - 514/383-1567 (1:167/211)
  6385.  
  6386. ------------------------------------------------------------------------
  6387.  
  6388. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  6389.  
  6390.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  3/17/1992
  6391.   To: STANTON HERSHMAN                Num: 175        Date:  3/15/1992
  6392. From: RAYMOND BERIAU                   Re:            Time:  3:03 am
  6393. Subj: THANKS FOR %@SELECT            Prvt: N          Read: N
  6394.  
  6395. Hello Stanton (of 1:3620/8@fidonet.org).
  6396. In a message dated 13-Mar-92 @ 13:34, you wrote to Sylvain Beauregard:
  6397.  
  6398.  SB>  Iff %1=a then
  6399.  SB>   alias >! D:alias.lst
  6400.  SB>   *ESET /A %@WORD[0,%@select[D:alias.lst,5,4,20,76,Actual alias 
  6401.  SB> list]]
  6402.  SB>   del D:alias.lst /Q
  6403.  SB>  ELSE
  6404.  SB>   set >! D:\env.lst
  6405.  SB>   *ESET %WORD[0,%@select[D:env.lst,10,10,20,70,Actual envronment 
  6406.  SB> variables]]
  6407.  SB>   del D:\env.lst /Q
  6408.  SB>  endiff
  6409.  
  6410.  SH> Curiosity:
  6411.  SH> If after the window displays, I elect to ESC, since I changed my 
  6412.  SH> mind or think that I changed my mind(!), I get the following-
  6413.  
  6414.  SH> Not in environment "[0"
  6415.  SH> Not in environment "]"
  6416.  
  6417. I solved the problem by correcting the second statement, and adding the "/m"
  6418. command to ESET, such as:
  6419.  
  6420. ELSE
  6421.  set >! D:\env.lst
  6422.  *ESET /M %@word[0,%@select[D:\env.lst,10,10,20,76,Environment variables]]
  6423.  del D:\env.lst /Q
  6424. endiff
  6425.  
  6426. --- msgedsq 2.0.5
  6427.  * Origin: INFODATA Informations - HST/DS [v.32|v.42Bis] (1:242/90)
  6428.  
  6429. ------------------------------------------------------------------------
  6430.  
  6431. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  6432.  
  6433.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  3/17/1992
  6434.   To: SYLVAIN BEAUREGARD              Num: 195        Date:  3/15/1992
  6435. From: DAVID POWERS                     Re:            Time: 11:50 am
  6436. Subj: Thanks for %@select            Prvt: N          Read: N
  6437.  
  6438. Hi,
  6439.  
  6440. >I had another idea.  We could easily create 2 lists (one for friends
  6441. >and the other for business) and name them TEL-LIST.F and
  6442. >TEL-LIST.B, and simply put a parameter on command line as F or
  6443. >B to choose one list or the other, with something like this:
  6444.  
  6445. >>set tel=%@select[%phdir.%1,5,9,15,70]
  6446.  
  6447. That will work but it requires that you enter a list to dial from each time
  6448. to you use the program, or you'll get an error.  How about this, replace the
  6449. starting line:
  6450.  
  6451.   set phdir=tel-list
  6452.  
  6453. with
  6454.  
  6455.   set phdir=b   (or whichever one you want as a default)
  6456.   ::if %1 is either a lone "b" or "f", override the default
  6457.   :: extension.  You can add more to the list by keeping the same
  6458.   :: format (i.e., *one* space between each letter you're
  6459.   :: testing).
  6460.   iff %@index[ b f , %1 ] ne -1 then
  6461.     set phdir=%1 ^ shift
  6462.   endiff
  6463.   set phdir=tel-list.%phdir
  6464.  
  6465. and that does it, I think.  I'm constantly afraid that someone is going to
  6466. pop out here and say, "Ah-ha, you're wrong, and you're a ninny, too."
  6467.  
  6468. This is also Environmentally Friendly, it recycles a variable. :)
  6469.  
  6470. I forgot, I changed the line that says "Dialing %tel, hit any key to hangup"
  6471. to:
  6472.  
  6473.   echo Dialing: %tel ^ delay 1 ^ pause Press any key to hang up.
  6474.  
  6475. Because without the delay, a double keystroke when choosing whom to call
  6476. would exit the program w/o hanging up the modem.
  6477.  
  6478.  * Koala 1.5 * Troy Wars:  "That's no horse, that's a battle platform!"
  6479.  
  6480.  
  6481. --- TosScan 1.00
  6482.  * Origin: Coconino County BBS *415-861-8290* San Francisco, CA (1:125/28)
  6483.  
  6484. ------------------------------------------------------------------------
  6485.  
  6486. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  6487.  
  6488.  BBS: ASTRIX          Conference: 4DOS            Imported:  3/18/1992
  6489.   To: ROBERT MAUBOUCHE                Num: 11904      Date:  3/16/1992
  6490. From: PATRICK LEE                      Re: 0          Time:  6:32 pm
  6491. Subj: Add ons                        Prvt: N          Read: N
  6492.  
  6493. RM ▓ I found a few shareware pgms which extends 4DOS possibilities even
  6494.    ▓ further, such as 4EDIT, 4PROMP, 4ZIP.
  6495.  
  6496. 4BATCH10.ARJ                  4,214 11-07-91
  6497.              4BATCH v1.0 - A simple collection of BTM files for 4DOS v4.0
  6498.              using the advanced features of 4DOS.
  6499. 4DATE.ZIP                     5,741 11-07-91
  6500.              4DATE [31 Oct 91] - Provides a useful set of date computation
  6501.              functions for 4DOS 4.xx.
  6502. 4DTNT.ARJ                    25,178 11-03-91
  6503.              4DOS Tips and Tricks - Several batch files written for 4DOS
  6504.              users. Public domain.
  6505. 4EDIT109.ZIP                 60,925 10-24-91
  6506.              4EDIT v1.09 [Sep 91] - A full screen DESCRIPT.ION editor for use
  6507.              with 4DOS. It makes it very easy to attach descriptions to your
  6508.              files, much more convenient than the built-in 4DOS DESCRIBE
  6509.              command. It uses WordStar-style keys and supports cut & paste.
  6510.              [ASP]
  6511. 4FC10.ARJ                    14,735 11-22-91
  6512.              4COMMENT v1.0 [16 Nov 91] - It extracts file descriptions from a
  6513.              BBS list or a formatted capture file, matches them to existing
  6514.              files, and installs the descriptions as an archive comment;
  6515.              description for 4DOS' DESCRIPT.ION file; or into a separate text
  6516.              file.
  6517. 4FILES2M.ARJ                 54,627 10-13-91
  6518.              4FILES v2.Na - Multi-purpose file management tool & front-end
  6519.              for your browsing & editing utilities. Includes editor for
  6520.              4DOS-style notes. Works on files singly or in marked blocks.
  6521.              Directory list can be sorted. [ASP]
  6522. FDU201A.ZIP                  24,568 12-10-90
  6523.              Directory utility for 4DOS, it can copy/move/delete files, and
  6524.              handles corresponding 4DOS description as well.  Faster than
  6525.              4DOS itself.
  6526. PKBTM103.ARJ                  8,807 01-18-92
  6527.              PK.BTM 1.03 for 4DOS 4.0 - One of the most complex 4DOS batch
  6528.              file ever published. It allows you to do almost everything that
  6529.              any archiver shell would do in a simple batch file.
  6530.  
  6531. ---
  6532.  ■ Mon Mar 16 18:32:53 EST 1992 ■
  6533.  
  6534. PCRelay:RUNNINGB -> #3 RelayNet (tm)
  6535.                                                                                                 
  6536. PCRelay:DCINFO -> #16 MetroLink (tm) International Network
  6537. 4.10              DC Info Exchange MetroLink International Hub
  6538.      
  6539.  
  6540. ------------------------------------------------------------------------
  6541.  
  6542. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  6543.  
  6544.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  3/18/1992
  6545.   To: DOUGLAS KITSON                  Num: 201        Date:  3/16/1992
  6546. From: TONY DUNLAP                      Re:            Time:  1:14 pm
  6547. Subj: JEOPARDY.BTM anyone?           Prvt: N          Read: N
  6548.  
  6549.  > Jeopardy is great Tony!
  6550.  
  6551.  > Got any other tunes in .BTM format?   I'd love to see (hear) some
  6552.  > more!
  6553.  
  6554. Ask your kids what this one is.
  6555.  
  6556. BEEP 392 8 522 6 392 2 440 4 349 3 293 8 392 6 329 2 261 3 329 3 293 10
  6557. BEEP 392 8 522 6 392 2 440 4 349 3 293 8 392 6 329 2 261 3 249 3 261 10
  6558.  
  6559.  
  6560. and this one's not real good but I think it's recognizable
  6561.  
  6562. beep 208 2 248 3 19 2 277 3 19 8 415 3 19 6 370 2 349 3 19 2 277 3 19 2 415 3
  6563. beep 19 6 370 2 349 3 19 2 277 3 19 2 208 3 19 2 277 3
  6564. beep 19 2 349 3 19 2 277 2 19 1 311 3 19 2
  6565. beep 208 2 248 3 19 2 277 3 19 8 415 3 19 6 370 2 349 3 19 2 277 3 19 2 415 3
  6566. beep 19 6 370 2 349 3 19 2 277 3 19 2 392 3 19 2 311 2 19 1 415 3 19 12
  6567. beep 208 2 248 3 19 2 277 3 19 8 415 3 19 6 370 2 349 3 19 2 277 3 19 2 415 3
  6568. beep 19 6 370 2 349 3 19 2 277 3 19 2 208 3 19 2 277 3
  6569. beep 19 2 349 3 19 2 277 2 19 1 311 3 19 2
  6570. beep 208 2 248 3 19 2 277 3 19 8 415 3 19 6 370 2 349 3 19 2 277 3 19 2 415 3
  6571. beep 19 6 370 2 349 3 19 2 277 3 19 2 311 3 19 2 262 2 19 1 277 3 19 24
  6572. beep 466 10 440 2 466 4 19 1 415 8 19 24
  6573. beep 466 10 440 2 466 4 19 1 415 8 19 24
  6574. beep 466 10 440 2 466 4 19 1 415 8 19 15
  6575. beep 415 2 392 3 19 2 311 3 19 2 349 3 19 2 392 2 19 1 415 3 19 16
  6576. beep 208 2 248 3 19 2 277 3 19 8 415 3 19 6 370 2 349 3 19 2 277 3 19 2 415 3
  6577. beep 19 6 370 2 349 3 19 2 277 3 19 2 208 3 19 2 277 3
  6578. beep 19 2 349 3 19 2 277 2 19 1 311 3 19 2
  6579. beep 208 2 248 3 19 2 277 3 19 8 415 3 19 6 370 2 349 3 19 2 277 3 19 2 415 3
  6580. beep 19 6 370 2 349 3 19 2 277 3 19 2 311 3 19 2 262 2 19 1 277 3 19 16
  6581. beep 208 2 248 3 19 2 277 3 19 8 415 3 19 6 370 2 349 3 19 2 277 3 19 2 415 3
  6582. beep 19 6 370 2 349 3 19 2 277 3 19 2 208 3 19 2 277 3
  6583. beep 19 2 349 3 19 2 277 2 19 1 311 3 19 2
  6584. beep 208 2 248 3 19 2 277 3 19 8 415 3 19 6 370 2 349 3 19 2 277 3 19 2 415 3
  6585. beep 19 6 370 2 349 3 19 2 277 3 19 2 311 3 19 2 262 2 19 1 277 3
  6586.  
  6587.  
  6588. Later
  6589.  
  6590. ---
  6591.  * Origin: ODOT District 9 (1:2220/30)
  6592.  
  6593. ------------------------------------------------------------------------
  6594.  
  6595. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  6596.  
  6597.  BBS: ASTRIX          Conference: 4DOS            Imported:  3/19/1992
  6598.   To: ISAIAH LADERMAN                 Num: 11923      Date:  3/17/1992
  6599. From: ROBERT SOLOMON                   Re: 0          Time:  6:35 pm
  6600. Subj: LCD                            Prvt: N          Read: N
  6601.  
  6602. IL>Is there a facility in 4DOS that is similar to Ledbetters LCD, which
  6603. IL>automatically jumps to the proper path and subdirectory when given
  6604. IL>part of a subdirectory name?
  6605.  
  6606. Not that I know of, but PCMagazine just published a batch file that
  6607. can do this, called 2.bat.
  6608.  
  6609. @ECHO OFF
  6610. FOR %%h IN (a A b B c C d D e E) DO IF (%1) == (%%h) %%h:
  6611. REM FOR %%h IN (f F g G) DO IF (%1) == (%%h) %%h:
  6612. FOR %%h IN (a A b B c C d D e E) DO IF (%1) == (%%h) SHIFT
  6613. REM FOR %%h IN (f F g G) DO IF (%1) == (%%h) SHIFT
  6614. IF NOT EXIST %1\NUL CD \
  6615. FOR %%f IN (%1 %2 %3 %4 %5 %6 %7 %8 %9) DO CD %%f
  6616.  
  6617. Good luck
  6618.  
  6619. PCRelay:MOONDOG -> #35 RelayNet (tm)
  6620.                  
  6621.  
  6622. ------------------------------------------------------------------------
  6623.  
  6624. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  6625.  
  6626.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  3/20/1992
  6627.   To: ALL                             Num: 249        Date:  3/17/1992
  6628. From: DARRYL GREGORASH                 Re:            Time:  9:23 pm
  6629. Subj: DOS 5: boot from a RAM dr      Prvt: N          Read: N
  6630.  
  6631. The install command in DOS 5 will allow you to boot from a RAM drive.
  6632.  
  6633. All you need to do is make up a self-extracting archive file (that will be
  6634. faster than using the archive program) which contains 4DOS.COM, 4DOS.INI and
  6635. autoexec.bat, plus any other 4DOS config files (4START, 4EXIT, etc) you will
  6636. want to use.
  6637.  
  6638. If you use ARJ with the "include drive and path" option (-jf1 ??), all
  6639. necessary directories will be created during extraction. Just make sure to
  6640. specify the RAM drive as the source when you create the archive.
  6641.  
  6642. Suppose you have created 4AUTO.EXE as this self-extractor, and placed it in
  6643. C:\, and that E: is your RAM drive.  Then, in config.sys, include these
  6644. lines:
  6645.  
  6646. device=ramdrive.sys <see DOS manual for options>
  6647. INSTALL=4AUTO.EXE
  6648. shell=e:\4dos.com e:\ @e:\4dos.ini
  6649.  
  6650. DOS will whine that 4AUTO does not stay resident, but ignore the error
  6651. message -- all that is saying is that the program did not stay resident.
  6652.  
  6653. --- GEcho/beta
  6654.  * Origin: if not %@eval[2+2] eq 4 echo !@#@#$^& (1:140/86)
  6655.  
  6656. ------------------------------------------------------------------------
  6657.  
  6658. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  6659.  
  6660.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  3/20/1992
  6661.   To: DAVID POWERS                    Num: 224        Date:  3/17/1992
  6662. From: KEVIN COATES                     Re:            Time:  3:17 am
  6663. Subj: Help!                          Prvt: N          Read: N
  6664.  
  6665. DP>Hi,
  6666.  
  6667. DP>>The BBS backup run at midnight creates two files, BBS.ARJ and MSG.ARJ.
  6668. DP>>I want to rename them with the prior day embeded in the name, as thats
  6669. DP>>the day the data was created (eg. Bbs.arj --> SunBbs.arj). Is this
  6670. DP>>the most efficient way?
  6671.  
  6672.  
  6673. DP>>               If %_dow% eq Mon set bkuday=Sun
  6674. DP>>               If %_dow% eq Tue set bkuday=Mon
  6675. DP>>                "    "    "  "   "   etc.....
  6676.  
  6677. DP>>               Rename Bbs.arj %bkuday%Bbs.arj
  6678.  
  6679. DP>Try this, all on one line:
  6680.  
  6681. DP>  set bkuday=%@substr[SunMonTueWedThuFriSat,...
  6682. DP>    %@index[MonTueWedThuFriSatSun,%_dow],3]
  6683.  
  6684. Thanks for the reply David. I was looking in the manual to better
  6685. understand whats going on, but it isn't particularly descriptive
  6686. concerning the @index command. Would you mind elaborating?
  6687.  
  6688. Thanks,
  6689.  
  6690. Kevin
  6691.  
  6692.  
  6693.  * OLX 2.1 TD * -=:[Kevin]:=- [Entered on <Tue Mar 17> at <07:15am>]
  6694.  
  6695. --- Maximus 2.00
  6696.  * Origin: The KBC BBS * Dewitt, Ny * (315)446-4153 (1:2608/10)
  6697.  
  6698. ------------------------------------------------------------------------
  6699.  
  6700. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  6701.  
  6702.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  3/20/1992
  6703.   To: JOE RECKER                      Num: 244        Date:  3/17/1992
  6704. From: KEES BEEFTINK                    Re:            Time:  4:16 pm
  6705. Subj: Help!                          Prvt: N          Read: N
  6706.  
  6707. Hallo Joe,
  6708.  
  6709. Howdy Joe!
  6710.  
  6711.  RS> In a msg dated <Thu Mar 12 1992>, Joe Recker writes to Kevin Coates:
  6712.  
  6713.  JR>> if %_date=01-01-92 call monthly.btm
  6714.  
  6715.  RS> wouldn't
  6716.  
  6717.  RS> if "%@substr[%_date,3,2]" EQ "01" call monthly.btm
  6718.  
  6719.  RS> work better?
  6720.  
  6721.  Probably, but I think that
  6722.  
  6723.  iff "%@substr[%_date,1,2]" NE lastmonth then do
  6724.      set lastmonth="%@substr[%_date,1,2]"
  6725.      call monthly.btm
  6726.  endiff
  6727.  
  6728.  is a safer procedure. It works also when for some reason the first day of a
  6729.  month was skipped. This could happen by loss of the systemdate or a
  6730. breakdown
  6731.  of the system.
  6732.  
  6733. Regards, Kees
  6734.  
  6735. --- GEcho/beta
  6736.  * Origin: Wie weet waar wammes waggel woont? (FidoNet 2:512/222.7)
  6737.  
  6738. ------------------------------------------------------------------------
  6739.  
  6740. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  6741.  
  6742.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  3/20/1992
  6743.   To: KEVIN COATES                    Num: 265        Date:  3/18/1992
  6744. From: DAVID POWERS                     Re:            Time:  8:28 am
  6745. Subj: Help!                          Prvt: N          Read: N
  6746.  
  6747. Hi,
  6748.  
  6749. >Thanks for the reply David. I was looking in the manual to better
  6750. >understand whats going on, but it isn't particularly descriptive
  6751. >concerning the @index command. Would you mind elaborating?
  6752.  
  6753. Oh, sure, glad to help. Since @index returns the first position (there may
  6754. be others, but you have to check for each of them) of string2 in string1, in:
  6755.  
  6756.     @index[string1,string2]
  6757.  
  6758. if you surround string2 with some kind of delimiter (I use spaces, it's easy
  6759. to read), you can use @index to match a unique string against a set of
  6760. strings.  So that:
  6761.  
  6762.     if %@index[ label1 label2 label3 , %1 ] ne -1 goto %1
  6763.  
  6764. If you enter "label1" as the first parameter, @index will return 1, the
  6765. position of %1 in the larger string, and the Goto will execute.  For the
  6766. day-checking thing (the full strings are ...'s to get it on one line this
  6767. time),
  6768.  
  6769.     set bkuday=%@substr[Sun...Sat,%@index[Mon...Sun,%_dow],3]
  6770.  
  6771. @index returns the position of the day of week in a week starting on Monday
  6772. (it isn't case sensitive, the caps are there for easy reading).  @substr
  6773. takes that number and from the week starting on *Sunday* pulls three chars at
  6774. that position.  If %_dow is Sat, the @index would return 15, and %bkuday
  6775. would be set to chars 15-17, "Fri", of the Sun-Sat string.
  6776.  
  6777.  * Koala 1.5 * IN MEMORIAM:  OPUS/LIMEKILLER '84
  6778.  
  6779.  
  6780. --- TosScan 1.00
  6781.  * Origin: Coconino County BBS *415-861-8290* San Francisco, CA (1:125/28)
  6782.  
  6783. ------------------------------------------------------------------------
  6784.  
  6785. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  6786.  
  6787.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  3/20/1992
  6788.   To: FLOYD DRENNON                   Num: 248        Date:  3/17/1992
  6789. From: DARRYL GREGORASH                 Re:            Time:  9:13 pm
  6790. Subj: Why                            Prvt: N          Read: N
  6791.  
  6792.  > for %a in (*.pkt *.mo? *.tu? *.we? *.th? *.fr? *.sa? *.su?)
  6793.  > do (if exist %a move %a f:\mail >&> NUL)
  6794.  
  6795. 4DOS insists on echoing a "file not found" error from the "for" command
  6796. whenever one of the files does not exist.  Your redirection applies to the
  6797. "if exist" command, not the "for".
  6798.  
  6799. You can accomplish the same thing, in fewer characters, and avoid the error
  6800. message:
  6801.  
  6802. for %a in (pkt mo tu we th fr sa su)  (
  6803.     if exist *.%a* move *.%a* f:\mail)
  6804.  
  6805. --- GEcho/beta
  6806.  * Origin: if not %@eval[2+2] eq 4 echo !@#@#$^& (1:140/86)
  6807.  
  6808. ------------------------------------------------------------------------
  6809.  
  6810. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  6811.  
  6812.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  3/23/1992
  6813.   To: DAVID POWERS                    Num: 321        Date:  3/21/1992
  6814. From: JACK STEIN                       Re:            Time: 10:16 am
  6815. Subj: Help!                          Prvt: N          Read: N
  6816.  
  6817.  
  6818. DP>The BBS backup run at midnight creates two files, BBS.ARJ and MSG.ARJ.
  6819. DP>I want to rename them with the prior day embeded in the name, as thats
  6820. DP>the day the data was created (eg. Bbs.arj --> SunBbs.arj). Is this
  6821. DP>the most efficient way?
  6822.      
  6823.      
  6824. DP>>>               If %_dow% eq Mon set bkuday=Sun
  6825. DP>>>               If %_dow% eq Tue set bkuday=Mon
  6826. DP>>>                "    "    "  "   "   etc.....
  6827.      
  6828. DP>>>               Rename Bbs.arj %bkuday%Bbs.arj
  6829.      
  6830. Instead of showing the day of the week, how about showing the date as
  6831. the filename with something like this:
  6832.  
  6833. set tday=%@SUBSTR[%_DATE,0,2,]%@eval[%@SUBSTR[%_DATE,3,2] -1 ]
  6834. %@substr[%_DATE,6,2]
  6835.  
  6836. Now you have a variable "%tday" set to yesterdays date. If it's March
  6837. 31 then tday will be equal to "033092".  The problem with this is on
  6838. April 1st, tday will equal "040092".  I reckon you could fuss with that
  6839. and work around it if you wanted.
  6840.  
  6841. Now, BEFORE you pack up yesterdays log, rename it:
  6842.  
  6843.         REN BBS.LOG  %tday.bbs
  6844.         REN MSG.LOG  %tday.msg
  6845.  
  6846. Now add the files to the archieve and you will have all your logs in
  6847. one archeive dated correctly and identified by the extension.
  6848.  
  6849. I know this isn't quite what you asked but what the heck, it's the
  6850. thought that count's
  6851.  
  6852. Jack
  6853.  
  6854.  
  6855.  
  6856. ... TANSTAAFL
  6857. --- Via Silver Xpress V2.28
  6858.  * Origin: Jack's Free Lunch  Allison Park, Pa. 412-492-0822 (1:129/171)
  6859. 1)
  6860.  
  6861. ------------------------------------------------------------------------
  6862.  
  6863. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  6864.  
  6865.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  3/24/1992
  6866.   To: GEORGE TRACY                    Num: 359        Date:  3/21/1992
  6867. From: DARRYL GREGORASH                 Re:            Time: 10:57 am
  6868. Subj: DOS 5: boot from a RAM dr      Prvt: N          Read: N
  6869.  
  6870. [4DOS booted to a RAM drive]
  6871.  
  6872.  > I then made a btm file called mk4auto.btm
  6873.  
  6874.  > del c:\4dos\4auto.exe
  6875.  > arj a -jf -je1 c:\4dos\4auto g:\4dos\*.*
  6876.  
  6877. Excellent idea; I do not know if the arj Update command will update a self
  6878. extractor, but I think it should.  If so, then you could also replace the BTM
  6879. with an alias:
  6880.  
  6881. alias mk4*auto arj u -jf -je1 c:\4dos\4auto g:\4dos\*.*
  6882.  
  6883. --- GEcho/beta
  6884.  * Origin: if not (%@eval[2+2]) eq (4) echo !@#@#$)& (1:140/86)
  6885.  
  6886. ------------------------------------------------------------------------
  6887.  
  6888. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  6889.  
  6890.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  3/24/1992
  6891.   To: ALL                             Num: 355        Date:  3/21/1992
  6892. From: TONY DUNLAP                      Re:            Time:  5:09 pm
  6893. Subj: OVER.BTM /1                    Prvt: N          Read: N
  6894.  
  6895. On the lines not beginning with "beep", insert 1 space then append it to the
  6896. previous line.
  6897.  
  6898. gosub part1
  6899. gosub part2
  6900. gosub part1
  6901. quit
  6902. :part1
  6903. beep 262 1 523 1 262 1 523 1 262 1 523 1 262 1 523 1 262 1 523 1 262 1 523 1
  6904. 262 1 523 1 262 1 523 1
  6905. beep 523 1 1046 1 523 1 1046 1 523 1 1046 1 523 1 1046 1 523 1 1046 1 523 1
  6906. 1046 1 523 1 1046 1 523 1 1046 1
  6907. beep 494 1 988 1 494 1 988 1 494 1 988 1 494 1 988 1
  6908. beep 392 1 784 1 392 1 784 1
  6909. beep 440 1 880 1 440 1 880 1
  6910. beep 494 1 988 1 494 1 988 1 494 1 988 1 494 1 988 1
  6911. beep 523 1 1046 1 523 1 1046 1 523 1 1046 1 523 1 1046 1 523 1 1046 1 523 1
  6912. 1046 1 523 1 1046 1 523 1 1046 1
  6913. beep 262 1 523 1 262 1 523 1 262 1 523 1 262 1 523 1
  6914. beep 440 1 880 1 440 1 880 1 440 1 880 1 440 1 880 1 440 1 880 1 440 1 880 1
  6915. 440 1 880 1 440 1 880 1
  6916. beep 392 1 784 1 392 1 784 1 392 1 784 1 392 1 784 1 392 1 784 1 392 1 784 1
  6917. 392 1 784 1 392 1 784 1 392 1 784 1 392 1 784 1 392 1 784 1 392 1 784 1
  6918. beep 247 1 494 1 247 1 494 1 247 1 494 1 247 1 494 1
  6919. beep 220 1 440 1 220 1 440 1 220 1 440 1 220 1 440 1 220 1 440 1 220 1 440 1
  6920. 220 1 440 1 220 1 440 1
  6921. beep 349 1 698 1 349 1 698 1 349 1 698 1 349 1 698 1 349 1 698 1 349 1 698 1
  6922. 349 1 698 1 349 1 698 1
  6923. beep 330 1 660 1 330 1 660 1 330 1 660 1 330 1 660 1
  6924. beep 262 1 523 1 262 1 523 1
  6925. beep 294 1 588 1 294 1 588 1
  6926. beep 330 1 660 1 330 1 660 1 330 1 660 1 330 1 660 1
  6927. beep 349 1 698 1 349 1 698 1 349 1 698 1 349 1 698 1
  6928. beep 294 1 588 1 294 1 588 1 294 1 588 1 294 1 588 1
  6929. beep 247 1 494 1 247 1 494 1
  6930. beep 262 1 523 1 262 1 523 1
  6931. beep 294 1 588 1 294 1 588 1 294 1 588 1 294 1 588 1
  6932. beep 330 1 660 1 330 1 660 1 330 1 660 1 330 1 660 1
  6933. beep 262 1 523 1 262 1 523 1 262 1 523 1 262 1 523 1 262 1 523 1 262 1 523 1
  6934. 262 1 523 1 262 1 523 1 262 1 523 1 262 1 523 1 262 1 523 1 262 1 523 1
  6935. return
  6936.  
  6937. To be concluded in the next message.
  6938.  
  6939. ---
  6940.  * Origin: DISCOVER (1:2220/30.1)
  6941.  
  6942. ------------------------------------------------------------------------
  6943.  
  6944. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  6945.  
  6946.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  3/24/1992
  6947.   To: ALL                             Num: 356        Date:  3/21/1992
  6948. From: TONY DUNLAP                      Re:            Time:  5:10 pm
  6949. Subj: OVER.BTM /2                    Prvt: N          Read: N
  6950.  
  6951. continued from previous message.
  6952.  
  6953. :part2
  6954. beep 19 2 392 1 784 1 392 1 784 1 330 1 660 1 330 1 660 1
  6955. beep 392 1 784 1 392 1 784 1 330 1 660 1 330 1 660 1
  6956. beep 392 1 784 1 392 1 784 1 330 1 660 1 330 1 660 1
  6957. beep 392 1 784 1 392 1 784 1 330 1 660 1 330 1 660 1
  6958. beep 392 1 784 1 392 1 784 1 349 1 698 1 349 1 698 1
  6959. beep 392 1 784 1 392 1 784 1 349 1 698 1 349 1 698 1
  6960. beep 392 1 784 1 392 1 784 1 349 1 698 1 349 1 698 1
  6961. beep 392 1 784 1 392 1 784 1 349 1 698 1 349 1 698 1
  6962. beep 392 1 784 1 392 1 784 1
  6963. beep 440 1 880 1 440 1 880 1 440 1 880 1 440 1 880 1
  6964. beep 494 1 988 1 494 1 988 1 494 1 988 1 494 1 988 1 494 1 988 1 494 1 988 1
  6965. 494 1 988 1 494 1 988 1 494 1 988 1 494 1 988 1
  6966. beep 19 2 392 1 784 1 392 1 784 1 330 1 660 1 330 1 660 1
  6967. beep 392 1 784 1 392 1 784 1 330 1 660 1 330 1 660 1
  6968. beep 392 1 784 1 392 1 784 1 330 1 660 1 330 1 660 1
  6969. beep 392 1 784 1 392 1 784 1 330 1 660 1 330 1 660 1
  6970. beep 392 1 784 1 392 1 784 1 370 1 740 1 370 1 740 1
  6971. beep 440 1 880 1 440 1 880 1 370 1 740 1 370 1 740 1
  6972. beep 440 1 880 1 440 1 880 1 370 1 740 1 370 1 740 1
  6973. beep 440 1 880 1 440 1 880 1 370 1 740 1 370 1 740 1
  6974. beep 440 1 880 1 440 1 880
  6975. beep 494 1 988 1 494 1 988 1 494 1 988 1 494 1 988 1 494 1 988 1 494 1 988 1
  6976. 494 1 988 1 494 1 988 1
  6977. beep 523 1 1046 1 523 1 1046 1 523 1 1046 1 523 1 1046 1
  6978. beep 587 1 1175 1 587 1 1175 1 587 1 1175 1 587 1 1175 1 587 1 1175 1 587 1
  6979. 1175 1 587 1 1175 1 587 1 1175 1 587 1 1175 1 587 1 1175 1 587 1 1175 1 587 1
  6980. 1175 1
  6981. return
  6982.  
  6983. End of OVER.BTM
  6984.  
  6985. Enjoy
  6986.  
  6987. ---
  6988.  * Origin: DISCOVER (1:2220/30.1)
  6989.  
  6990. ------------------------------------------------------------------------
  6991.  
  6992. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  6993.  
  6994.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  3/25/1992
  6995.   To: TOM RAWSON                      Num: 366        Date:  3/23/1992
  6996. From: DAVID POWERS                     Re:            Time: 10:45 am
  6997. Subj: New internal variables?        Prvt: N          Read: N
  6998.  
  6999. Hi Tom,
  7000.  
  7001. I recently discovered I could do this:
  7002.  
  7003.     set _min=`%@substr[%_time,3,2]`
  7004.     set _hour=`%@substr[%_time,0,2]`
  7005.     set _day=`%@substr[%_date,3,2]`
  7006.     set _mon=`%@substr[%_date,0,2]`
  7007.     (%_year is possible but I wouldn't use it)
  7008.  
  7009. and have pseudo-internal variables.  Is there any chance that those four (or
  7010. five) might be included in an upcoming version? This isn't really a
  7011. suggestion, since this works fine; but do you have it planned?
  7012.  
  7013.  * Koala 1.5 * Where does the dream end and reality begin?
  7014.  
  7015.  
  7016. --- TosScan 1.00
  7017.  * Origin: Coconino County BBS *415-861-8290* San Francisco, CA (1:125/28)
  7018.  
  7019. ------------------------------------------------------------------------
  7020.  
  7021. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  7022.  
  7023.  BBS: ASTRIX          Conference: 4DOS            Imported:  3/26/1992
  7024.   To: LOREN OLSON                     Num: 11945      Date:  3/20/1992
  7025. From: DAVE LEMIRE                      Re: 11151      Time:  7:10 am
  7026. Subj: ALIASES AND MOR ALIASES        Prvt: N          Read: N
  7027.  
  7028. LO> ME TOO!!!!!  Before long I will be 4dos Literate!!!!!  Now, I played
  7029.   > with list and select last night.  Not exactly what I wanted but close.
  7030.   > Buergs List allows you to go into sub dir's and select files, just by
  7031.   > using the return key.  Gee, I wonder if they could put that in the next
  7032.   > version of 4dos, (hint only)?  Also played with the tab key and sub
  7033.   > dir's last night.  Now I can get rid of my change dir program!!!  Gee,
  7034.   > Don this is fun!!!!
  7035.  
  7036. Hi Loren, long time no electrons  :-)
  7037.  
  7038.     I'm a long time 4DOS fan (a beta tester, in fact) -- glad to
  7039. see you're discovering its virtues.  Knowing Rex's and Tom's
  7040. philosphy, don't expect to see Buerg's LIST duplicated in 4DOS.
  7041.  
  7042.     I suggest you check out a copy of ACD and combine it with the
  7043. following 4DOS alias -- together they make the most effective
  7044. directory changer I know:
  7045.  
  7046. CD=`iff "%1"=="" then^ACD *^elseiff isdir %1 .OR. "%1"="-"
  7047.         then^*cd %1^else ACD %&^endiff
  7048.  
  7049. (all on one line of course).  With this approach, the ACD program
  7050. is only invoked if needed, and the 4DOS "cd -" syntax to change
  7051. back to the last directory remains available.
  7052.  
  7053.     Have Fun.
  7054.  
  7055. Dave Lemire
  7056. ---
  7057.  ■ OLX 2.2 ■ Resistance Is Useless!   (If < 1 ohm)
  7058.  ■ KMail 2.91A The DC Information Exchange
  7059.                         
  7060. PCRelay:DCINFO -> #16 MetroLink (tm) International Network
  7061. 4.10              DC Info Exchange MetroLink International Hub
  7062.      
  7063.  
  7064. ------------------------------------------------------------------------
  7065.  
  7066. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  7067.  
  7068.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  3/26/1992
  7069.   To: DAVE DOCKUS                     Num: 373        Date:  3/24/1992
  7070. From: JEFFREY BOYD                     Re:            Time:  6:30 am
  7071. Subj: 4DOS w/ shez                   Prvt: N          Read: N
  7072.  
  7073. Hello Dave!
  7074.  
  7075. In a msg of <21 Mar 92>, Dave Dockus writes to All :
  7076.  
  7077.  DD>   Anyone out there running 4DOS with Shez and using the internal list
  7078.  DD> command in 4dos through shez. Your help would be appreciated...
  7079.  
  7080.      I've forgotten who to give the credit to for this, but here goes.
  7081.  
  7082.      You'll need PCMag's BAT2EXE program.  Create a one line .BAT file using
  7083. this:
  7084.  
  7085. DRIVE:\PATH TO 4DOS\4DOS.COM /C LIST %1
  7086.  
  7087.      Then run BAT2EXE on the .BAT file, reconfigure SHEZ to use it, and
  7088. VOILA! I've been using it here for about eight months.
  7089.  
  7090. Jeffrey
  7091.  
  7092. --- GEcho/beta
  7093.  * Origin: Gravity is a myth...  The earth sucks (1:3622/801)
  7094.  
  7095. ------------------------------------------------------------------------
  7096.  
  7097. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  7098.  
  7099.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  3/29/1992
  7100.   To: JC CRANFILL                     Num: 430        Date:  3/27/1992
  7101. From: GEORGE TRACY                     Re:            Time:  5:50 pm
  7102. Subj: Dos 5: boot from a ram dr      Prvt: N          Read: N
  7103.  
  7104.  > I would appreciate it if you would repost your system
  7105.  > and the tweaks you have made.
  7106.  
  7107. I'll put the repost at the end.   Darryl Gregorash get's credit for the
  7108. concept.
  7109.  
  7110.  > BTW, I do operate primarily from DESQview, in
  7111.  > suggestions in that regard would be appreciated (ie,
  7112.  > could that be sped up as well?)
  7113.  
  7114. Me too.  DV2.41 and QEMM 6.01 and no problems here.  No tweaking is
  7115. necessary.
  7116.  
  7117. I made a 4DOS subdirectry on drive G, my ram drive.  I moved these files into
  7118. it changing any path names where appropriate:
  7119.  
  7120. 4dos.com
  7121. 4dos.hlp
  7122. 4dos.ini
  7123. 4exit.btm
  7124. 4help.exe
  7125. 4start.btm
  7126. aliases
  7127. history
  7128.  
  7129. I then made an alias called mk4auto (thanks DG)
  7130.  
  7131. mk4*auto del c:\4dos\4auto.exe ^ ARJ a -jf -je1 c:\4dos\4auto G:\4DOS\*.*
  7132.  
  7133. The reason for the alias is so that if I need to make a change to any of the
  7134. files on the ram drive the 4AUTO.EXE file on the hard drive can easily be
  7135. regenerated.
  7136.  
  7137. From config.sys
  7138.  
  7139. 1: DEVICE=C:\UTILS\XDISK.SYS /B8192 /D512
  7140. 2: DEVICE=C:\UTILS\RAMDRIVE.SYS parm1 parm2 ...
  7141. 3: INSTALL=C:\4DOS\4AUTO.EXE
  7142. 4: SHELL=G:\4DOS\4DOS.COM G:\4DOS @G:\4DOS\4DOS.INI
  7143.  
  7144. Take your pick of either line 1 or 2 and optimize the driver first.  You will
  7145. need both lines 3 and 4.  I use line 1 because the XDISK driver allows ram
  7146. drives larger than 4 megs and is DV and QEMM compatible.  Line 3 gives me an
  7147. config error at boot up, but I just ignore it as it does not hurt anything.
  7148.  
  7149. Works like a charm and it freed up about 150 k to boot.  Press F1 and the HD
  7150. light does not come on.  Aliases and history are loaded with out accessing
  7151. the hard drive either.
  7152.  
  7153. ---
  7154.  * Origin: The Orphanage, Statesville, NC (704)873-2058 *DS+* (1:379/1107.1)
  7155.  
  7156. ------------------------------------------------------------------------
  7157.  
  7158. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  7159.  
  7160.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  3/29/1992
  7161.   To: JC CRANFILL                     Num: 433        Date:  3/27/1992
  7162. From: DARRYL GREGORASH                 Re:            Time: 10:45 am
  7163. Subj: Dos 5: boot from a ram dr      Prvt: N          Read: N
  7164.  
  7165.  > Unfortunately I lost the beginning of this thread but am
  7166.  > very interested in the boot from ramdisk idea (I also run
  7167.  > 4dos).
  7168.  
  7169. I made up an ARJ self-extracting file, with the following files in it:
  7170.  
  7171. I:4DOS.COM
  7172.  
  7173. I:4DOS.INI
  7174.  
  7175. Note the paths stored in the file.  Actual drives/paths will vary, depending
  7176. on your system configuration.
  7177.  
  7178. I believe the command line I used (ARJ 2.30) was:
  7179.  
  7180. arj a -je -jf -y d:\4dos40\4exec i:\4dos*.*
  7181.  
  7182. (je says create self extractor, jf says store full drive/path with the
  7183. filename, y is to avoid that silly question asking me to confirm that I
  7184. really do wish to do this).
  7185.  
  7186. Note that you can have as many files in your archive as you want, or as space
  7187. will allow, including stuff in subdirectories, including empty subdirectories
  7188. (there is a switch to include empty subdirectories in the archive).  If you
  7189. already have such an archive, you can convert it to self-extractor by running
  7190.  
  7191. arj y -je <ARJfile>
  7192.  
  7193. In CONFIG.SYS, add the following DOS 5 INSTALL command;
  7194.  
  7195. install=d:\4dos40\4exec.exe -y
  7196.  
  7197. (-y says to assume <Y>es to all queries, not sure if that is really needed). 
  7198. DOS will complain, since nothing stays resident, but you can ignore that --
  7199. DOS is not smart.
  7200.  
  7201. The SHELL line then reads:
  7202.  
  7203. SHELL=i:\4DOS.COM i:\ @i:\4dos.ini
  7204.  
  7205. I -believe- all the information here is necessary, since i: is definitely not
  7206. the boot drive (boot drive equals drive from which DOS kernel, ie. IO.SYS and
  7207. MSDOS.SYS, were loaded, which will normally be C:)
  7208.  
  7209. --- GEcho/beta
  7210.  * Origin: if not (%@eval[2+2]) eq (4) echo !@#@#$)& (1:140/86)
  7211.  
  7212. ------------------------------------------------------------------------
  7213.  
  7214. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  7215.  
  7216.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  3/29/1992
  7217.   To: ALAN POWELL                     Num: 429        Date:  3/27/1992
  7218. From: KRIS LEWIS                       Re:            Time:  6:06 am
  7219. Subj: INT EXIT CODE "4095"9          Prvt: N          Read: N
  7220.  
  7221. > Have also found that the internal 4DOS command QUIT will produce the same
  7222. > exit code in .BTMs, .BATs _and_ ALIASES.  This isn't very useful when you
  7223. > need to know the true result upon exit.  QUIT will have to avoided in such
  7224. > cases.  Hmmmm ...
  7225.  
  7226. What about:
  7227.  
  7228. Doit (some program that generates a code you want returned)
  7229. Quit %?
  7230.  
  7231. using 4dos' ability to grab the errorlevel, then quit with that errorlevel. 
  7232. Seems simple to me, and it works.
  7233. K
  7234. --- JMail
  7235.  * Origin: * Trader's World 619-BUG-TRAX * (1:202/613)
  7236.  
  7237. ------------------------------------------------------------------------
  7238.  
  7239. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  7240.  
  7241.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  3/29/1992
  7242.   To: TONY DUNLAP                     Num: 406        Date:  3/23/1992
  7243. From: RON FABRE                        Re:            Time: 11:57 am
  7244. Subj: JEOPARDY.BTM anyone?           Prvt: N          Read: N
  7245.  
  7246. While we're on the subject, what about this one my wife helped me punch in.
  7247.  
  7248. beep 392 4 392 8 440 8 330 8 392 8 440 8 392 4 440 4
  7249. beep 440 4 392 4 330 8 392 4 440 8 330 4 392 8 440 4
  7250. beep 523 4 523 4 440 4 523 8 587 8 659 8 587 20 19 8
  7251. beep 523 4 523 4 523 8 523 20 19 8 19 8 392 8 392 8
  7252. beep 440 8 330 8 392 8 440 8 392 4 440 4 440 4 392 4
  7253. beep 330 8 392 4 440 8 330 4 392 8 440 4 523 4 523 4
  7254. beep 440 4 523 8 587 8 659 8 587 20 19 8 523 4 523 4
  7255. beep 523 8 523 16 19 8 19 8 494 4 494 4 494 4 494 4
  7256. beep 494 8 494 8 494 4 494 4 494 4 494 4 494 8 554 8
  7257. beep 494 4 494 4 494 4 494 4 494 8 587 8 494 4 494 4
  7258. beep 494 4 494 4 494 8 622 8 494 4 494 4 494 4 494 4
  7259. beep 494 8 659 8 494 4 494 4 494 4 466 4 494 4 466 4
  7260. beep 494 8 330 4 330 4 330 4 156 4 330 8 330 4 330 4
  7261. beep 156 8 330 8 392 24 19 8 392 8 392 8 440 8 330 8
  7262. beep 392 8 440 8 392 4 440 4 440 4 392 4 330 8 392 4
  7263. beep 440 8 330 4 392 8 440 4 523 4 523 4 440 4 523 8
  7264. beep 587 8 659 8 587 32 19 8 659 4 587 4 523 8 523 32
  7265.  
  7266.  
  7267.   Regards...
  7268.       Ron Fabre...
  7269.       [23 Mar 92  11:57:49 AustEST]
  7270.  
  7271. --- XRS! 5+DV
  7272.  * Origin: Procratination is the assasination of motivation. (RA 3:634/383)
  7273. 
  7274. ------------------------------------------------------------------------
  7275.  
  7276. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  7277.  
  7278.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  3/29/1992
  7279.   To: ALL                             Num: 407        Date:  3/23/1992
  7280. From: RON FABRE                        Re:            Time:  1:17 pm
  7281. Subj: Music Staff                    Prvt: N          Read: N
  7282.  
  7283. This should come in handy for anyone who knows anything about music and who
  7284. wants to create a tune or three for the 4DOS 'beep' command.
  7285.  
  7286.  
  7287.       _   4DOS v4 music staff.                       #       b
  7288.      ( )                               G    1568   1662    1480
  7289. +----|/-------------------------------F----1397---1480--------------
  7290. |   /|                               E    1318           1244
  7291. +--/-+------------------------------D----1174---1244----1108--------
  7292. | |  |_                            C    1046   1108
  7293. +-+-/+-\--------------------------B-----988------------932----------
  7294. | || |  |                        A     880    932     831
  7295. +-┼ \+--┼-----------------------G-----784----831-----740------------
  7296. |  \_|_/                       F     698    740
  7297. +--\_/------------------------E-----659------------622--------------
  7298.                              D     587    622     554
  7299. +--/---\-------------Middle C-----523----554------------------------
  7300. | |@     \ .               B     494            466
  7301. +-@@-----|----------------A-----440----466-----415------------------
  7302. |        | .             G     392    415     370
  7303. +--------|--------------F-----349----370----------------------------
  7304. |        |             E     330            311
  7305. +--------/------------D-----294----311-----277----------------------
  7306. |    __/             C     262    277
  7307. +-------------------B-----248------------233------------------------
  7308.                    A     220    233     208
  7309.  
  7310. By the way, are high bit characters allowed in the 4DOS conference area? I
  7311. created this staff in 8bit ascii, then had to translate to 7bit to post it in
  7312. here just to make sure.
  7313.  
  7314.   Regards...
  7315.       Ron Fabre...
  7316.       [23 Mar 92  13:17:43 AustEST]
  7317.  
  7318. --- XRS! 5+DV
  7319.  * Origin: XRS offline reader...XRlent! (RA 3:634/383)
  7320. 
  7321. ------------------------------------------------------------------------
  7322.  
  7323. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  7324.  
  7325.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  3/31/1992
  7326.   To: STEVE DAVIS                     Num: 451        Date:  3/28/1992
  7327. From: BOB CAMPBELL                     Re:            Time: 10:25 am
  7328. Subj: an idea...                     Prvt: N          Read: N
  7329.  
  7330.  > But back to the subject.  One of my most used utilities
  7331.  > in LCD.EXE, similar to Norton's NCD, but better for the 
  7332.  > way I work.  Is there any way the feature of being able 
  7333.  > to jump to a directory by typing something like LCD TE 
  7334.  > to get to \DIR1\DIR2\DIR3\TEMP can be incorporated into 
  7335.  
  7336. here's something i grabbed from this echo awhile back.  
  7337. i use it often.   i had to make a very small change to the for loop so that
  7338. it could handle longer path names but other than that it's the same btm
  7339. that Stefan Krister submitted.  as you can see the original code is
  7340. commented out.
  7341.  
  7342.     --------------------------- cut here -----------------------------
  7343. c:
  7344. :
  7345. : Batch for fast changing directories
  7346. : as a replace for Norton's Change-Directory (NCD)
  7347. :
  7348. : Author:
  7349. : Stefan Krister, 09.11.1991, 2:241/7014.17 (Fidonet)
  7350. : D-8900 Augsburg, Swabia, Bavaria, Germany
  7351. :
  7352. : needings: (MS- or DR-) DOS from 3.xx to 5.0 (6.0), 4DOS 4.0
  7353. :           directory c:\temp
  7354. :
  7355. : Syntax: xcd [-r] [dir] | -?
  7356. :
  7357. : -r     rescanning all drives from c: to f: (if present)
  7358. :
  7359. : dir    searches for directory "dir" and changes to it respectvely
  7360. :        shows all directorys matching "dir"
  7361. :
  7362. : -?     shows syntax
  7363. :
  7364.  
  7365. @echo off
  7366.  
  7367. :
  7368. : what to do if parameters ...
  7369. :
  7370.  
  7371. if %1 == -? goto usage                   : syntax
  7372. if %1 == -r gosub scan                   : scanning
  7373. if %# gt 0 goto such                     : searching for "dir"
  7374.  
  7375. goto anz                                 : show directories
  7376.  
  7377.  
  7378. :scan
  7379. :
  7380. : In this subruotine the drives c: to f: are scanned
  7381. : and all found directories are sorted and written in
  7382. : c:\temp\verz.vvv
  7383. :
  7384. : If you have more drives, change (d: e: ...) to your needs.
  7385. :
  7386.  
  7387. echos scanning drive c:
  7388. *dir /og /b /s /1 /c /d /ad /f c:\>c:\temp\verz.uso
  7389.  
  7390.  
  7391. : for %%d in (d: e: f:) do if %@ready[%d] eq 1 (
  7392. :                  echos  %d
  7393. :                  dir /og /b /s /1 /c /d /ad /f %d\>>c:\temp\verz.uso)
  7394.  
  7395.  
  7396.  for %%d in (d: e: f:) do if %@ready[%d] eq 1 gosub uso
  7397.  goto vvv
  7398.  
  7399. :uso
  7400.  echos  %d
  7401.  *dir /og/b/s/1/c/d/ad/f %d\>>c:\temp\verz.uso
  7402.  return
  7403.  
  7404. :vvv
  7405. type c:\temp\verz.uso|sort>c:\temp\verz.vvv
  7406. del c:\temp\verz.uso>nul
  7407.  
  7408. shift
  7409. echo  ready ...
  7410. return
  7411.  
  7412. :anz
  7413. :
  7414. : This part shows c:\temp\verz.vvv in a window.
  7415. : Your choice goes to variable verz.
  7416. : If it is a valid directory, chanche to it,
  7417. : if not, nothing happens.
  7418. :
  7419. :
  7420. : If your window is to small please change the parameters in line
  7421. : %@select...
  7422. :
  7423. if not exist c:\temp\verz.vvv gosub scan
  7424. set verz=%@select[\temp\verz.vvv,4,5,18,30,change dir]
  7425. iff isdir %verz then cdd %verz else cdd . endiff
  7426. goto end
  7427.  
  7428. :such
  7429. :
  7430. : In this part I try to find "dir"
  7431. :
  7432. : If I find one -> change to it.
  7433. : If I find many you get a window.
  7434. :
  7435. : If I find nothing -> error
  7436. :
  7437. echo searching ...
  7438. type c:\temp\verz.vvv|find /i "%1">c:\temp\search.vvv
  7439. iff %@filesize[c:\temp\search.vvv,b] == 0 then
  7440.     echo directory not here
  7441.     goto end
  7442. elseiff %@lines[c:\temp\search.vvv] == 0 then
  7443.         cdd %@line[c:\temp\search.vvv,0]
  7444.         goto end
  7445. else set verz=%@select[\temp\search.vvv,4,5,18,30,found directories]
  7446. endiff
  7447.  
  7448. iff isdir %verz then cdd %verz else cdd . endiff
  7449.  
  7450. :end
  7451. :
  7452. :
  7453. :
  7454. quit
  7455.  
  7456. :usage
  7457. :
  7458. : syntax
  7459. :
  7460. text
  7461.  
  7462.  Batch for fast change directory
  7463.  
  7464.  Syntax: xcd [-r] [dir] | -?
  7465.  
  7466.  -r     rescanning drives
  7467.  
  7468.  dir    searching for "dir" and changing
  7469.  
  7470.  -?     syntax
  7471.  
  7472. endtext
  7473. quit
  7474.  
  7475.  ---------------------------- cut here -------------------------------
  7476.  
  7477. --- OPMED 3.00
  7478.  * Origin: 4DOS Ver 4 Rev B? leaves command.com in awe (1:119/911.1)
  7479. 
  7480.  
  7481. ------------------------------------------------------------------------
  7482.  
  7483. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  7484.  
  7485.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  3/31/1992
  7486.   To: RON FABRE                       Num: 443        Date:  3/27/1992
  7487. From: DOUG SEMLER                      Re:            Time: 10:56 pm
  7488. Subj: Music Staff                    Prvt: N          Read: N
  7489.  
  7490. -=> Quoting Ron Fabre to All <=-
  7491.  Your Bass clef is a little off...
  7492.  RF> This should come in handy for anyone who knows anything about music
  7493.  RF> and who wants to create a tune or three for the 4DOS 'beep' command. 
  7494.  
  7495.  RF>       _   4DOS v4 music staff.                       #       b
  7496.  RF>      ( )                               G    1568   1662    1480
  7497.  RF> +----|/-------------------------------F----1397---1480--------------
  7498.  RF> |   /|                               E    1318           1244
  7499.  RF> +--/-+------------------------------D----1174---1244----1108--------
  7500.  RF> | |  |_                            C    1046   1108
  7501.  RF> +-+-/+-\--------------------------B-----988------------932----------
  7502.  RF> | || |  |                        A     880    932     831
  7503.  RF> +-┼ \+--┼-----------------------G-----784----831-----740------------
  7504.  RF> |  \_|_/                       F     698    740
  7505.  RF> +--\_/------------------------E-----659------------622--------------
  7506.  RF>                              D     587    622     554
  7507.                         Middle  -C-    523    554
  7508.                                 B     494            466
  7509.      +--/---\------------------A-----440----466-----415------------------
  7510.      | |@     \ .             G     392    415     370
  7511.      +-@@-----|--------------F-----349----370----------------------------
  7512.      |        | .           E     330            311
  7513.      +--------|------------D-----294----311-----277----------------------
  7514.      |        |           C     262    277
  7515.      +--------/----------B-----248------------233------------------------
  7516.      |    __/           A     220    233     208
  7517.      +-------------------------------------------------------------------
  7518. You were close :)
  7519.  
  7520. ... Mr Worf, fire at Will.  Oh, it's you, Bob!  Mr Worf, fire at Bob!
  7521. --- Blue Wave/Max v2.05 [NR]
  7522.  * Origin: Mindcrime BBS - 1-619-426-5754 - CSP/Maximus (1:202/1003.0)
  7523.  
  7524. ------------------------------------------------------------------------
  7525.  
  7526. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  7527.  
  7528.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  4/02/1992
  7529.   To: ALL                             Num: 463        Date:  3/28/1992
  7530. From: MARC NEIGER                      Re:            Time:  4:58 pm
  7531. Subj: %@Select[con,...]              Prvt: N          Read: N
  7532.  
  7533. Hi All,
  7534.  
  7535. It seems impossible to use the %@select func on the std input.
  7536. I wanted to do an interactive cd using
  7537. dir /AD /B | set d=%@select[con,...] but it doesn't work, so I had to use a
  7538. temp file.
  7539.  
  7540. I also encountered some odd behavior.
  7541. for this temp file I also want to include the "." and ".."
  7542. if I use
  7543.   echo .>temp
  7544.   echo ..>>temp
  7545.   dir /AD /B>>temp
  7546. it works
  7547. but if I use
  7548.   (echo .^Xn.. ^ dir /AD /B)>temp
  7549. where ^X is the escape char it shows garbles.
  7550. this one works from the cmd line but not in a batch (btm)
  7551.  
  7552. Any info would be appreciated.
  7553.  
  7554. Cheers,
  7555. Marc
  7556.  
  7557. --- GoldED 2.31p
  7558.  * Origin:  SYNERGY [Toulouse, France] (2:324/101)
  7559.  
  7560. ------------------------------------------------------------------------
  7561.  
  7562. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  7563.  
  7564.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  4/02/1992
  7565.   To: ALL                             Num: 498        Date:  3/24/1992
  7566. From: RON FABRE                        Re:            Time:  3:11 pm
  7567. Subj: Another tune...                Prvt: N          Read: N
  7568.  
  7569. This is one for your mum, not that I'm being sexist, just 'ageist'. ;-)
  7570.  
  7571. echos In
  7572. scrput 5 17 blue on red n
  7573. beep 392 4
  7574. echos  old
  7575. beep 392 8
  7576. echos en
  7577. scrput 3 8  red on blue t
  7578. beep 440 8
  7579. echos  days
  7580. beep 330 8
  7581. echos  a
  7582. scrput 3 5  red on blue A
  7583. beep 392 8
  7584. echos  glimpse
  7585. scrput 5 22 blue on red D
  7586. beep 440 8
  7587. echos  of
  7588. scrput 5 38 blue on red l
  7589. beep 392 4
  7590. echos  stock
  7591. scrput 5 41 blue on red F
  7592. beep 440 4
  7593. echos
  7594. beep 440 4
  7595. echos ing
  7596. scrput 3 14 red on blue G
  7597. beep 392 4
  7598. echos  was
  7599. beep 330 8
  7600. echos  looked
  7601. scrput 5 18 blue on red t
  7602. beep 392 4
  7603. echos  on
  7604. beep 440 8
  7605. scrput 5 29 blue on red R
  7606. echos  as
  7607. beep 330 4
  7608. scrput 5 27 blue on red y
  7609. echos  some
  7610. beep 392 8
  7611. scrput 5 24 blue on red S
  7612. echos thing
  7613. beep 440 4
  7614. scrput 5 11 blue on red a
  7615. echos  shock
  7616. beep 523 4
  7617. beep 523 4
  7618. scrput 3 13 red on blue _
  7619. echo ing,
  7620. beep 440 4
  7621. echos Now
  7622. beep 523 8
  7623. echos  heav
  7624. scrput 3 20 red on blue .
  7625. beep 587 8
  7626. echos en
  7627. scrput 5 42 blue on red a
  7628. beep 659 8
  7629. echos  knows,
  7630. beep 587 20
  7631. scrput 5 28 blue on red _
  7632. beep 19 8
  7633. echos  An
  7634. beep 523 4
  7635. echos y
  7636. scrput 5 32 blue on red _
  7637. beep 523 4
  7638. echos thing
  7639. beep 523 8
  7640. echo  Goes.
  7641. beep 523 20
  7642. scrput 5 20 blue on red _
  7643. beep 19 8
  7644. beep 19 8
  7645. echos Good
  7646. beep 392 8
  7647. echos  auth
  7648. scrput 5 36 blue on red a
  7649. beep 392 8
  7650. echos ors
  7651. beep 440 8
  7652. scrput 5 7  blue on red a
  7653. echos  too
  7654. beep 330 8
  7655. echos  who
  7656. beep 392 8
  7657. scrput 5 26 blue on red b
  7658. echos  once
  7659. beep 440 8
  7660. echos  knew
  7661. beep 392 4
  7662. scrput 5 43 blue on red b
  7663. echos  bet
  7664. beep 440 4
  7665. beep 440 4
  7666. echos ter
  7667. scrput 5 23 blue on red O
  7668. beep 392 4
  7669. echos  words,
  7670. beep 330 8
  7671. echos  now
  7672. scrput 5 35 blue on red G
  7673. beep 392 4
  7674. echos  on
  7675. beep 440 8
  7676. echos ly
  7677. beep 330 4
  7678. scrput 5 13 blue on red e
  7679. echos  use
  7680. beep 392 8
  7681. echos  four
  7682. beep 440 4
  7683. scrput 5 45 blue on red e
  7684. echos  let
  7685. beep 523 4
  7686. beep 523 4
  7687. echos ter
  7688. scrput 3 12 red on blue g
  7689. beep 440 4
  7690. echo  words
  7691. scrput 5 10 blue on red l
  7692. beep 523 8
  7693. echos writ
  7694. beep 587 8
  7695. scrput 3 11 red on blue n
  7696. echos ing
  7697. beep 659 8
  7698. echos  prose,
  7699. scrput 5 16 blue on red i
  7700. beep 587 20
  7701. beep 19 8
  7702. echos  An
  7703. beep 523 4
  7704. echos y
  7705. beep 523 4
  7706. echos thing
  7707. scrput 5 14 blue on red d
  7708. beep 523 8
  7709. echo  Goes.
  7710. beep 523 16
  7711. scrput 3 7  red on blue y
  7712. beep 19 8
  7713. beep 19 8
  7714. scrput 3 16 red on blue e
  7715. echos The
  7716. beep 494 4
  7717. echos  world
  7718. beep 494 4
  7719. beep 494 4
  7720. echos  has
  7721. beep 494 4
  7722. scrput 5 40 blue on red _
  7723. echos  gone
  7724. beep 494 8
  7725. echos  mad
  7726. beep 494 8
  7727. scrput 3 6  red on blue n
  7728. echos  to
  7729. beep 494 4
  7730. echos day
  7731. beep 494 4
  7732. scrput 5 31 blue on red n
  7733. beep 494 4
  7734. echos  And
  7735. beep 494 4
  7736. echos  good's
  7737. scrput 5 8  blue on red n
  7738. beep 494 8
  7739. echos  bad
  7740. beep 554 8
  7741. echos  to
  7742. scrput 3 15 red on blue o
  7743. beep 494 4
  7744. echos day,
  7745. beep 494 4
  7746. beep 494 4
  7747. scrput 5 19 blue on red o
  7748. echos  And
  7749. beep 494 4
  7750. echos  black's
  7751. beep 494 8
  7752. scrput 5 30 blue on red o
  7753. echos  white
  7754. beep 587 8
  7755. echos  to
  7756. beep 494 4
  7757. scrput 5 44 blue on red r
  7758. echo day,
  7759. beep 494 4
  7760. beep 494 4
  7761. echos And
  7762. scrput 5 6  blue on red r
  7763. beep 494 4
  7764. echos  day's
  7765. beep 494 8
  7766. echos  night
  7767. scrput 3 17 red on blue s
  7768. beep 622 8
  7769. echos  to
  7770. beep 494 4
  7771. echos day,
  7772. scrput 5 9  blue on red s
  7773. beep 494 4
  7774. beep 494 4
  7775. echos  When
  7776. beep 494 4
  7777. echos  most
  7778. beep 494 8
  7779. echos  guys
  7780. beep 659 8
  7781. echos  to
  7782. beep 494 4
  7783. echos day
  7784. beep 494 4
  7785. scrput 5 25 blue on red _
  7786. beep 494 4
  7787. echos  that
  7788. beep 466 4
  7789. echos  wo
  7790. beep 494 4
  7791. echos men
  7792. beep 466 4
  7793. echos  prize
  7794. beep 494 8
  7795. echos  to
  7796. beep 330 4
  7797. scrput 5 33 blue on red &
  7798. echos day,
  7799. beep 330 4
  7800. beep 330 4
  7801. echos  are
  7802. beep 156 4
  7803. echo  just
  7804. beep 330 8
  7805. echos sil
  7806. beep 330 4
  7807. scrput 5 46 blue on red .
  7808. echos ly
  7809. beep 330 4
  7810. echos  gi
  7811. scrput 3 10 red on blue i
  7812. beep 156 8
  7813. echos go
  7814. beep 330 8
  7815. echo los;
  7816. beep 392 24
  7817. beep 19 8
  7818. echos So
  7819. beep 392 8
  7820. echos  though
  7821. beep 392 8
  7822. echos  I'm
  7823. beep 440 8
  7824. echos  not
  7825. beep 330 8
  7826. scrput 5 12 blue on red t
  7827. echos  a
  7828. beep 392 8
  7829. echos  great
  7830. beep 440 8
  7831. echos  ro
  7832. beep 392 4
  7833. echos manc
  7834. beep 440 4
  7835. scrput 5 15 blue on red _
  7836. beep 440 4
  7837. echos er
  7838. beep 392 4
  7839. echos  I
  7840. beep 330 8
  7841. echos  know
  7842. beep 392 4
  7843. echos  that
  7844. scrput 3 18 red on blue .
  7845. beep 440 8
  7846. echos  you're
  7847. beep 330 4
  7848. echos  bound
  7849. scrput 5 5  blue on red T
  7850. beep 392 8
  7851. echos  to
  7852. beep 440 4
  7853. scrput 3 19 red on blue .
  7854. echos  an
  7855. beep 523 4
  7856. beep 523 4
  7857. scrput 5 34 blue on red _
  7858. echos swer
  7859. beep 440 4
  7860. echos  when
  7861. beep 523 8
  7862. scrput 5 39 blue on red e
  7863. echo  I
  7864. beep 587 8
  7865. echos pro
  7866. beep 659 8
  7867. scrput 5 21 blue on red 4
  7868. echos pose
  7869. beep 587 32
  7870. beep 19 8
  7871. echos  An
  7872. scrput 3 9 red on blue h
  7873. beep 659 4
  7874. echos y
  7875. beep 587 4
  7876. scrput 5 37 blue on red y
  7877. echos thing
  7878. beep 523 8
  7879. echos  Goes.
  7880. beep 523 32
  7881.  
  7882.   Regards...
  7883.       Ron Fabre...
  7884.       [24 Mar 92  15:15:14 AustEST]
  7885.  
  7886. --- XRS! 5+DV
  7887.  * Origin: I've chosen not to participate in the recession... (RA 3:634/383)
  7888. 
  7889. ------------------------------------------------------------------------
  7890.  
  7891. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  7892.  
  7893.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  4/02/1992
  7894.   To: DARRYL GREGORASH                Num: 460        Date:  3/29/1992
  7895. From: JC CRANFILL                      Re:            Time:  8:07 am
  7896. Subj: Dos 5: boot from a ram dr      Prvt: N          Read: N
  7897.  
  7898. > Unfortunately I lost the beginning of this thread but am
  7899. > very interested in the boot from ramdisk idea (I also run
  7900. > 4dos).
  7901.  
  7902. DG>I made up an ARJ self-extracting file, with the following files in it:
  7903.  
  7904. DG>I:4DOS.COM
  7905.  
  7906. DG>I:4DOS.INI  **** these two do not contain a back slash, right?
  7907.  
  7908. DG>Note the paths stored in the file.  Actual drives/paths will vary,
  7909.   >depending on your system configuration.
  7910.  
  7911. DG>I believe the command line I used (ARJ 2.30) was:
  7912.  
  7913. DG>arj a -je -jf -y d:\4dos40\4exec i:\4dos*.*
  7914.                                     ^^^^
  7915.                                     wouldn't this be the path
  7916.                                     where these files reside on
  7917.                                     the hardrive (ie c:\4dos?
  7918. DG>(je says create self extractor, jf says store full drive/path with the
  7919.   >filename, y is to avoid that silly question asking me to
  7920.   >confirm that I really do wish to do this).
  7921.  
  7922. DG>Note that you can have as many files in your archive as you want, or as
  7923.   >space will allow, including stuff in subdirectories, including
  7924.   >empty subdirectories (there is a switch to include empty
  7925.   >subdirectories in the archive).  If you already have such an
  7926.   >archive, you can convert it to self-extractor by running
  7927.  
  7928. What happens if changes are made to the .ini file on the ramdisk. On the
  7929. next boot, won't the arj file containg the unmodified .ini be loaded?
  7930.  
  7931.  
  7932. DG>In CONFIG.SYS, add the following DOS 5 INSTALL command;
  7933.  
  7934. DG>install=d:\4dos40\4exec.exe -y
  7935.  
  7936. DG>(-y says to assume <Y>es to all queries, not sure if that is really
  7937.   >needed).  DOS will complain, since nothing stays resident, but
  7938.   >you can ignore that -- DOS is not smart.
  7939.  
  7940. DG>The SHELL line then reads:
  7941.  
  7942. DG>SHELL=i:\4DOS.COM i:\ @i:\4dos.ini
  7943.  
  7944. DG>I -believe- all the information here is necessary, since i: is
  7945.   >definitely not the boot drive (boot drive equals drive from
  7946.   >which DOS kernel, ie. IO.SYS and MSDOS.SYS, were loaded, which
  7947.   >will normally be C:)
  7948.  
  7949. Thanks.
  7950.  
  7951.              "JCC"
  7952.  
  7953.  * OLX 2.2 * *                                         * *SLMR #495*
  7954.  
  7955.  
  7956. --- TosScan 1.00
  7957.  * Origin: T.A.B.B. Tampa's largest Fidonet BBS 813-961-6242 (1:377/6)
  7958.  
  7959. ------------------------------------------------------------------------
  7960.  
  7961. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  7962.  
  7963.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  4/02/1992
  7964.   To: JC CRANFILL                     Num: 496        Date:  3/31/1992
  7965. From: DARRYL GREGORASH                 Re:            Time: 12:38 am
  7966. Subj: Dos 5: boot from a ram dr      Prvt: N          Read: N
  7967.  
  7968.  > DG>I made up an ARJ self-extracting file,
  7969.  
  7970.  > DG>I:4DOS.COM
  7971.  
  7972.  > DG>I:4DOS.INI  **** these two do not contain a back slash, right?
  7973.  
  7974. Well, they didn't when I did a list files with ARJ, but I created the archive
  7975. with the full path.
  7976.  
  7977.  > DG>I believe the command line I used (ARJ 2.30) was:
  7978.  
  7979.  > DG>arj a -je -jf -y d:\4dos40\4exec i:\4dos*.*
  7980.  >                                     ^^^^
  7981.  >                                     wouldn't this be the
  7982.  >                                     path on the harddrive?
  7983.  
  7984. Not at all; the -jf switch creates the archive with full drive and path
  7985. information stored along with the filename.  When you run the .EXE program,
  7986. the default behaviour is full path specification, with directory creation as
  7987. necessary.
  7988.  
  7989. Therefore, you must create the execfile off the ramdrive.
  7990.  
  7991.  > What happens if changes are made to the .ini file on the
  7992.  
  7993. Then you update the archive; I have not checked the ARJ u command to see if
  7994. it will work along with the -je switch, but if it does not, then keep an
  7995. original of the .ARJ file around, update that, and recreate the
  7996. self-extractor.
  7997.  
  7998. --- GEcho/beta
  7999.  * Origin: if not (%@eval[2+2]) eq (4) echo !@#@#$)& (1:140/86)
  8000.  
  8001. ------------------------------------------------------------------------
  8002.  
  8003. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  8004.  
  8005.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  4/02/1992
  8006.   To: ALL                             Num: 490        Date:  3/27/1992
  8007. From: CHRISTOPHE DAVID                 Re:            Time: 10:41 pm
  8008. Subj: Summer time / Winter time      Prvt: N          Read: N
  8009.  
  8010. Just a simple batch for lazy sysops who do not want to change their system
  8011. clock manually...
  8012.  
  8013. Run this with the daily maintenance...  (Dates valid for Belgium.  Check for
  8014. your country...)
  8015.  
  8016. ****************************************************************************
  8017. rem summer time
  8018. iff (%_date) == (29/03/92) then
  8019.    time %@eval[%@eval[%@substr[%_time,0,2]] + 1]%@substr[%_time,2,6]
  8020. endiff
  8021.  
  8022. rem winter time
  8023. iff (%_date) == (27/09/92) then
  8024.    time %@eval[%@eval[%@substr[%_time,0,2]] - 1]%@substr[%_time,2,6]
  8025. endiff
  8026. ****************************************************************************
  8027.  
  8028. Christophe
  8029.  
  8030. --- GoldED 2.32.B0316+
  8031.  * Origin:  Greetings from Brussels, Belgium.  (2:295/701.0)
  8032.  
  8033. ------------------------------------------------------------------------
  8034.  
  8035. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  8036.  
  8037.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  4/04/1992
  8038.   To: RON FABRE                       Num: 533        Date:  4/01/1992
  8039. From: BOB CAMPBELL                     Re:            Time:  9:34 am
  8040. Subj: Another tune...                Prvt: N          Read: N
  8041.  
  8042.  > echos In
  8043.  > scrput 5 17 blue on red n
  8044.  > beep 392 4
  8045.  > echos  old
  8046.  > beep 392 8
  8047.  > echos en
  8048.  > scrput 3 8  red on blue t
  8049.  
  8050. thanks that was great!
  8051. i have a suggestion, in the future you can save a lot of bytes by
  8052. replacing reptitive commands and strings with a variable as shown below.
  8053.  
  8054. setlocal
  8055. set s1=scrput 13
  8056. set s2=scrput 15
  8057. set c1=blue on red
  8058. set c2=red on blue
  8059. set b=beep
  8060. set e=echos
  8061. cls
  8062. %e In
  8063. %s2 17 %C1 n
  8064. %b 392 4
  8065. %e  old
  8066. %b 392 8
  8067. %e en
  8068.  
  8069. btw, i had to reposition your message ten lines down and clr the screen in
  8070. order to read what it said.  otherwise it got stepped on by the song. also
  8071. a lot of message editors can't handle messages of that length. 
  8072.  
  8073. thanks again i thought it was so good, i made your message into a file
  8074. called "anything.btm" available for download from 119/911.0
  8075.  
  8076. --- OPMED 3.00
  8077.  * Origin: 4DOS Ver 4 Rev B? leaves command.com in awe (1:119/911.1)
  8078.  
  8079. ------------------------------------------------------------------------
  8080.  
  8081. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  8082.  
  8083.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  4/04/1992
  8084.   To: FABIO FERRERO                   Num: 545        Date:  4/02/1992
  8085. From: JOSEPH GASPARD                   Re:            Time:  7:03 pm
  8086. Subj: JEOPARDY.BTM anyone?           Prvt: N          Read: N
  8087.  
  8088. In a note to Douglas Kitson in 4DOS, Fabio wrote:
  8089.  
  8090.  FF> Try it!
  8091.  
  8092. Neat!  Here's one for ya:
  8093.  
  8094.  
  8095. beep 1050 5 1000 4 1050 3 1000 3 1050 3 790 3 950 3 830 3
  8096. beep 705 10 525 3 670 3 705 3 805 10 525 3 850 3 805 3 850 10 705 4
  8097. beep 1050 3 1000 3 1050 3 1000 3 1050 3 790 3 950 3 830 3
  8098. beep 705 10 525 3 670 3 705 3 805 10 525 3 850 3 805 3 705 10
  8099. beep 805 3 850 3 950 3 1050 10 630 3 1120 3 1050 3 950 10 630 3 1050 3 950 3
  8100. beep 850 10 525 4 955 4 850 5 790 15 525 20
  8101. beep 1050 5 1000 4 1050 4 1000 4 1050 3 790 3 950 3 830 3
  8102. beep 705 10 525 4 670 4 705 4 800 10 525 4 850 5 805 5 705 20 1410 1
  8103.  
  8104.  
  8105.   )[< Joseph >](
  8106.  
  8107.  
  8108. ---
  8109.  * Origin: ROBOCOP!! San Diego, CA (619)299-0351   (Quick 1:202/911)
  8110.  
  8111. ------------------------------------------------------------------------
  8112.  
  8113. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  8114.  
  8115.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  4/04/1992
  8116.   To: DOUGLAS KITSON                  Num: 521        Date:  3/24/1992
  8117. From: FABIO FERRERO                    Re:            Time:  5:14 pm
  8118. Subj: JEOPARDY.BTM anyone?n          Prvt: N          Read: N
  8119.  
  8120. Friday March 13 1992, Douglas Kitson wrote to Jim Deeds:
  8121.  
  8122.  DK>  Thanks for posting this Jim.  Have you seen (heard) any others you can
  8123.  DK> post here?
  8124.  
  8125. ---cut---
  8126. beep 262 11  196 4  392 7  262 7  330 7  294 4  330 4  262 7  196 7  262 7
  8127. beep 440 7  392 7  330 4  350 4  392 9  294 4  392 13
  8128. ---end---
  8129.  
  8130. Try it!
  8131.  
  8132. --- GoldEditor
  8133.  * Origin: 4DOS for the DOS (2:332/407)
  8134.  
  8135. ------------------------------------------------------------------------
  8136.  
  8137. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  8138.  
  8139.  BBS: ASTRIX          Conference: 4DOS            Imported:  4/06/1992
  8140.   To: ALL                             Num: 12112      Date:  4/02/1992
  8141. From: JORJ STRUMOLO                    Re: 0          Time: 11:38 pm
  8142. Subj: aliases, anon                  Prvt: N          Read: N
  8143.  
  8144.     Well, haven't seen any good aliases displayed here in a while, so   
  8145.  I'll include a few of my own in hopes of encouraging others.  I use
  8146.  lots of odd characters, for different purposes.  For one thing, using a
  8147.  single character speeds up the use of keystroke aliases, especially the
  8148.  long ones, which no longer play out on the command line before
  8149.  executing.  They also shorten other aliases that depend on them.  Some
  8150.  of my aliases (all at-signs replaced by {at}, all Ctrl-X up-arrows
  8151.  replaced by {^X}):
  8152.  
  8153. ────────────────────────────
  8154. »d pushd
  8155. «d popd
  8156. ────────────────────────────
  8157. {at}F2 å{^X}r  ; modifies three files:
  8158. å »d C:\Bat^ƒw^Q ..\Autoexec.bat ..\Config.sys 4dos.ini^«d
  8159. ───────────────────────────
  8160. {at}Alt-A ª{^X}r
  8161. ª »d C:\Bat^Q A.4d Set.4d^unalias *^alias/r A.4d^set/r Set.4d^«d
  8162. ───────────────────────────
  8163. {at}Shift-F2 φ{^X}r   ; modifies macro & help files for QEdit
  8164. φ »d C:\Tek^ƒw^Q Qconfig.dat Qhelp.txt^«d
  8165. qec »d C:\Tek^CR^Qconfig^Aqa q*.*^«d^w     ; installs modified files
  8166. ────────────────┬──────────
  8167. {at}F4 d2{^X}r  │  d *dir /ogk          ; dir
  8168. {at}F5 d4{^X}r  │  2 *dir /2vgk         ; dir, 2 cols
  8169. {at}F6 de{^X}r  │  d2 *dir /2voegk      ; dir, 2 cols, ext
  8170. {at}F7 dd{^X}r  │  d4 *dir /4vogk       ; dir, 4 cols
  8171. {at}F8 ds{^X}r  │  da *dir /ogpvk A:\   ; dir, A: drive
  8172.                 │  dd *dir /odg4vk      ; dir, date, 4 col
  8173.                 │  de *dir /oeg4vk      ; dir, ext,  4 col
  8174.                 │  ds *dir /osg4vk      ; dir, size, 4 col
  8175.                 │  dw *dir /ogwvk       ; dir, wide
  8176.                 │  dr dir D:            ; dir, ramdrive
  8177. ────────────────┴──────────
  8178. ƒ fakekey      ; a buffer stuffer
  8179. ƒw ƒ {^X}^W    ; stuffs a Ctrl-W, turning off wordwrap in QEdit
  8180. ───────────────────────────
  8181. ..*.... cd %0\%1
  8182. a A: ^cd\ ^w^d2    ; move to A:
  8183. sw*ap rq %1 !¡.!¡^rq %2 %1^rq !¡.!¡ %2  ; swaps 2 filenames
  8184. ───────────────────────────
  8185. {at}Ctrl-V {at}iff %_rows=25 then^50^else^25{^X}r
  8186. 25 sv k ok^ç    ; the above toggles between 25/50 lines,
  8187. 50 sv v ok^ç    ; using a tiny utility called SetVideo
  8188.                 ; is there some internal way to do this?
  8189. ───────────────────────────
  8190. f »d C:\^attrib/s %1 %2 %3 %4>°_°^view °_°^del/p °_°^«d^w
  8191.   ; the above is a file-finder that allows extended wildcards
  8192.   ; and allows the option of retaining the find list, °_°
  8193. ───────────────────────────
  8194. l*ist C:\Any\List.com
  8195. m*ove *move
  8196. r*en *ren
  8197. rq ren/q
  8198. u pkunzip
  8199. v*iew *list
  8200. z pkzip
  8201. ───────────────────────────
  8202. s sled %1 %2 %3 %4 %5^aqa %1 %2 %3 %4 %5^ç
  8203. q C:\Tek\Q.exe %1 %2 %3 %4 %5^aqa %1 %2 %3 %4 %5^ç
  8204. aqa Attrib/Q -A     ; Archive bits annoy me, so I always wipe them
  8205. ───────────────────────────
  8206. ç cls                          ; various color
  8207. k ç whi on bla bor red         ; combinations I
  8208. w ç bla on whi bor yel         ; use frequently
  8209. ckk ç cya on bla bor bla
  8210. ckw ç cya on bla bor whi
  8211. kkc ç bla on bla bor cya
  8212. kwg ç bla on whi bor gre
  8213. wkc ç bri whi on bla bor cya
  8214. wkg ç whi on bla bor gre
  8215. wkk ç bri whi on bla bor bla
  8216. ───────────────────────────
  8217. Σ stuff    ; another buffer stuffer, works differently than FakeKey
  8218. cr Σ CR    ; stuffs a carriage return
  8219. ε echo.    ; makes a blank line
  8220. ──────────────────────────
  8221.  
  8222.     And that's enough for one message, no?
  8223. ---
  8224.  ■ SPEED 1.2b #1019 ■ Support your local chemist: Invest in ionic bonds. ■
  8225.  
  8226. PCRelay:IDSVAX -> #82 RelayNet (tm)
  8227.                           
  8228.  
  8229. ------------------------------------------------------------------------
  8230.  
  8231. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  8232.  
  8233.  BBS: ASTRIX          Conference: 4DOS            Imported:  4/06/1992
  8234.   To: ALL                             Num: 12114      Date:  4/02/1992
  8235. From: JORJ STRUMOLO                    Re: 0          Time: 11:42 pm
  8236. Subj: bundled batches                Prvt: N          Read: N
  8237.  
  8238.     Sector size (cluster size?) on a hard disk is 2K; files smaller than  
  8239.  that waste alot of space.  So it's not a bad idea to bundle small batch
  8240.  files together.  The general idea:
  8241.  
  8242.                 ───────────────────────────────────────
  8243.  echo off
  8244.  goto %1 Goof
  8245.  
  8246. :Goof
  8247.  beep ^ screen 5 22 What's the arg? : BW, CM, PC, SR, PW ^ Quit
  8248.  
  8249. :PC
  8250.  »d C:\PcPlus\
  8251.     (various commands)
  8252.  Quit
  8253.  
  8254. :SR
  8255.  »d C:\SR\
  8256.     (various commands)
  8257.  Quit
  8258.  
  8259. :BW
  8260.  »d C:\SR\
  8261.     (various commands)
  8262.  Quit
  8263.  
  8264.  [etc, until the file hits the 2K mark, but doesn't pass it]
  8265.  
  8266.                 ───────────────────────────────────────
  8267.  
  8268.     I call the above file ¥.BTM, and call the various parts by hot keys:
  8269.  
  8270. {at}Alt-W {at}¥ PWr     ; my word processor
  8271. {at}Alt-1 {at}¥ CMr     ; a comm program
  8272. {at}Alt-B {at}¥ BWr     ; a mail reader
  8273. {at}Alt-P {at}¥ PCr     ; another comm program
  8274. {at}Alt-S {at}¥ SRr     ; a mail reader
  8275. ---
  8276.  ■ SPEED 1.2b #1019 ■ O Oysters come & walk with us, the Walrus did beseech.
  8277.  
  8278. PCRelay:IDSVAX -> #82 RelayNet (tm)
  8279.                     
  8280.  
  8281. ------------------------------------------------------------------------
  8282.  
  8283. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  8284.  
  8285.  BBS: ASTRIX          Conference: 4DOS            Imported:  4/06/1992
  8286.   To: ALL                             Num: 12113      Date:  4/02/1992
  8287. From: JORJ STRUMOLO                    Re: 0          Time: 11:40 pm
  8288. Subj: hot-key things                 Prvt: N          Read: N
  8289.  
  8290.     I'm lazy; I don't like typing long lines to change directories.   
  8291.  Rather, I have a few ways to do it.  One is
  8292.  
  8293. {at}Alt-F dfr                ; Directory Freedom, a file manager
  8294. df ç^C:\Tek\DF.com %1 %2^ç
  8295.  
  8296.     Then I simply use arrow keys to pick the directory.  If I'm not
  8297.  going to be using the file manager, a similar thing is accomplished by:
  8298.  
  8299. {at}Alt-V {at}L^çr    ; where L*ist = Vern Buerg's List
  8300.  
  8301.     Or, a less-secondarily-useful, but more clever deal, more 4dos-ish:
  8302.  
  8303. {at}Alt-D ∩r         ; pops up a list to select a directory to go to
  8304.  
  8305. ∩=Σ DN DN DN DN DN DN DN^cdd %{at}select[C:\Bat\D.4d,2,40,20,60]
  8306.  
  8307.     This part ^ is a buffer stuffer, stuffs in enough Downs to put the
  8308.  select bar in the middle of the list.  The list is simply a list of
  8309.  directories on my drive, one to a line:  C:\Any thru C:\Zap.
  8310.  
  8311.   ────────────────────────────────────────────────────────────────────────────
  8312.  
  8313. mn C:\Tek\Mouse off                                  ; deactivates my mouse
  8314. my »d C:\Tek\^Mouse^SetSpeed/p4/fMousePro.fil^«d     ; reactivates it
  8315. pk Pklite -a -b %1^r %1.bak %1.pk
  8316. vv %&|view/s^ç
  8317. ──────────────────────────────────────
  8318. {at}Alt-L αLr
  8319. αL bn^cr^C:\View\Lumen^by^w           ; program I use as screen filler
  8320.                                       ; sort of a screen blanker, it
  8321. bn BurnOut 0                          ; requires my real blanker
  8322. by BurnOut 5000                       ; to be turned off, then back on
  8323. ──────────────────────────────────────
  8324. {at}Alt-Z {at}history/f^çr           ; clears history & screen
  8325.  
  8326. {at}Alt-X {at}exitr                  ; exists secondary shells
  8327. ---
  8328.  ■ SPEED 1.2b #1019 ■ Nothing is as easy as it looks. ■
  8329.  
  8330. PCRelay:IDSVAX -> #82 RelayNet (tm)
  8331.                                                                                                   
  8332. PCRelay:DCINFO -> #16 MetroLink (tm) International Network
  8333. 4.10              DC Info Exchange MetroLink International Hub
  8334.  
  8335.   
  8336.  
  8337. ------------------------------------------------------------------------
  8338.  
  8339. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  8340.  
  8341.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  4/07/1992
  8342.   To: ALL                             Num: 255        Date:  4/01/1992
  8343. From: WIM JANSSEN                      Re:            Time: 11:59 pm
  8344. Subj: BootCtrl.Btm 1/3               Prvt: N          Read: N
  8345.  
  8346. Do you have a HD which has problems with a low temperature?
  8347. Maybe this will help you when you have such a HardDisk!
  8348. It check's your disks and reboot's if the disk are not ok. Number of times to
  8349. reboot and the time to wait can be configured.
  8350.  
  8351. You can use this Btm in 3 ways:
  8352.  
  8353. 1. With no parameters (It will use the default values "E" and "10"
  8354.    >BootCtrl
  8355. 2. 'Drive' as parameter and the default waiting time will be used.
  8356.    >BootCtrl F
  8357. 3. 'Drive' and 'Time' as parameters
  8358.    >BootCtrl D 20
  8359.  
  8360. Note: The wait time in seconds will become:
  8361.       90,150,250,etc etc
  8362.  
  8363. ---Begin part [1/3] of BootCtrl.Btm
  8364.  
  8365. @Rem +----------------------------------------------------+
  8366. @Rem | BootCtrl.Btm - V1.0 [4Dos4.0 B1]      1 April 1992 |
  8367. @Rem |                                                    |
  8368. @Rem | Reboot-Control when your (extra) HD('s) are not Ok |
  8369. @Rem |                                                    |
  8370. @Rem | By: Wim Janssen                 Fido: (2:512/32.9) |
  8371. @Rem +----------------------------------------------------+
  8372.  
  8373. SetLocal
  8374. Log Executing CmdLine=%CmdLine
  8375. @Rem ===========================================
  8376. @Rem %MinDrive - Minimum Of Disk On Your System.
  8377. @Rem ===========================================
  8378. Iff "%1" NE "" Then Set MinDrive=%@Upper[%1]
  8379. Else Set MinDrive=E
  8380. EndIff
  8381.  
  8382. @Rem ========================================================
  8383. @Rem %BootInfo - Path And Name Of Your Boot Information File.
  8384. @Rem ========================================================
  8385. Set BootInfo=C:\Sys\4Dos\Boot.Inf
  8386.  
  8387. @Rem =========================================================
  8388. @Rem %MaxBoot - Maximum Number Of Times Your System Will Boot.
  8389. @Rem =========================================================
  8390. Set MaxBoot=3
  8391.  
  8392. @Rem ========================================================
  8393. @Rem %BootTime - Number Of Seconds Your System Needs To Boot.
  8394. @Rem ========================================================
  8395. Set BootTime=70
  8396.  
  8397. @Rem ===================================================================
  8398. @Rem Some Second(s) Extra Needed in MaxDiff! When Logging Or Echoing ...
  8399. @Rem ===================================================================
  8400. Log  | Input %%IO^If "%IO" == "LOG is ON"  Set BootTime=%@Eval[%BootTime+15]
  8401. Echo | Input %%IO^If "%IO" == "ECHO is ON" Set BootTime=%@Eval[%BootTime+5]
  8402.  
  8403. Iff "%2" NE "" Then Set Fact=%2
  8404. Else Set Fact=10
  8405. EndIff
  8406. Set MaxDiff=%@Eval[%BootTime+%@Eval[%MaxBoot*%MaxBoot*%Fact]]
  8407.  
  8408. ---End part [1/3] of BootCtrl.Btm
  8409.  
  8410. ---
  8411.  * Origin: Point of "The Ultimate", 31-53-303902/328506 (2:512/32.9)
  8412.  
  8413. ------------------------------------------------------------------------
  8414.  
  8415. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  8416.  
  8417.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  4/07/1992
  8418.   To: ALL                             Num: 256        Date:  4/01/1992
  8419. From: WIM JANSSEN                      Re:            Time: 11:56 pm
  8420. Subj: BootCtrl.Btm 2/3               Prvt: N          Read: N
  8421.  
  8422. ---Begin part [2/3] of BootCtrl.Btm
  8423.  
  8424. :Begin
  8425. Set  DayNum=%@Date[%_Date]
  8426. If "%DayNum" LE "1" (
  8427.   Log ERROR! - SystemClock Not Correct!
  8428.   Log %CmdLine Not Executed!
  8429.   Goto Out
  8430. )
  8431. Set SecOfDay=%@Time[%_Time]
  8432. Set  BootNmb=0
  8433. Set BootDone=%SecOfDay
  8434.  
  8435. If Not Exist C:\Sys\4Dos\Boot.Inf Goto ChkDrv
  8436.  
  8437. Set  DayDone=%@Line[%BootInfo,0]
  8438. Set BootDone=%@Line[%BootInfo,1]
  8439. Set  BootNmb=%@Line[%BootInfo,2]
  8440. Set BootDiff=%@Eval[%SecOfDay-%BootDone]
  8441. Log MaxDiff  in seconds: %MaxDiff
  8442. Log BootDiff in seconds: %BootDiff
  8443.  
  8444. :ChkDrv
  8445. Echo Checking Minimum Drives On System ...
  8446. If "%@Ascii[%_LastDisk]" GE "%@Ascii[%MinDrive]"           Goto Continue
  8447. If "%@Ascii[%_LastDisk]" EQ "%@Eval[%@Ascii[%MinDrive]-1]" Goto ColdBoot
  8448. Goto Out
  8449.  
  8450. :ColdBoot
  8451. Log LastDisk is %_LastDisk:
  8452. If "%BootDiff" EQ ""       Set BootDiff=%MaxDiff
  8453. If "%DayDone" LT "%DayNum" Set BootNmb=0
  8454. Set BootNmb=%@Eval[%BootNmb+1]
  8455. Echo %DayNum    >%BootInfo
  8456. Echo %SecOfDay >>%BootInfo
  8457. Echo %BootNmb  >>%BootInfo
  8458.  
  8459. If %BootNmb  GT %MaxBoot Goto NoSucces
  8460. If %BootDiff GT %MaxDiff Goto NoTime
  8461.  
  8462. Cls
  8463. @Rem =========================================
  8464. @Rem DelayTime = (Fact)*2^(BootNmb) second(s)!
  8465. @Rem =========================================
  8466. Set DelayTime=%@Eval[%BootNmb*%Fact+%@Eval[%BootNmb-1]*%BootNmb*%Fact]
  8467.  
  8468. Echo Your System [LastDisk=%_LastDisk] Is Not OK!
  8469. Beep 1500 3 1200 2 500 1
  8470.  
  8471. ::next on one line!
  8472. ScrPut 3 0 Bright Blink White On Black Waiting %DelayTime Seconds Before
  8473. Rebooting The System!
  8474.  
  8475. Screen 5 0 Inkey /W%DelayTime Reboot Your System? [Y/N] : %%Response
  8476. If "%Response" == "Y" Goto Boot
  8477. If "%Response" == "N" Goto Abort
  8478.  
  8479. :Boot
  8480. Log Rebooting System!
  8481. Reboot /C
  8482. Log Error in 4Dos command: Reboot /C!
  8483. Goto Out
  8484. Quit
  8485.  
  8486. ---End part [2/3] of BootCtrl.Btm
  8487.  
  8488. ---
  8489.  * Origin: Point of "The Ultimate", 31-53-303902/328506 (2:512/32.9)
  8490.  
  8491. ------------------------------------------------------------------------
  8492.  
  8493. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  8494.  
  8495.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  4/07/1992
  8496.   To: ALL                             Num: 258        Date:  4/02/1992
  8497. From: WIM JANSSEN                      Re:            Time: 12:00 am
  8498. Subj: BootCtrl.Btm 2/3               Prvt: N          Read: N
  8499.  
  8500. Ai.. just packed the mail and there is one line that has to be changed!
  8501.  
  8502.  
  8503. If Not Exist C:\Sys\4Dos\Boot.Inf Goto ChkDrv
  8504.  
  8505. In:
  8506.  
  8507. If Not Exist %BootInfo Goto ChkDrv
  8508.  
  8509.  
  8510.  
  8511. Groetjes,
  8512. Wim Janssen
  8513.  
  8514. ---
  8515.  * Origin: Point of "The Ultimate", 31-53-303902/328506 (2:512/32.9)
  8516.  
  8517. ------------------------------------------------------------------------
  8518.  
  8519. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  8520.  
  8521.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  4/07/1992
  8522.   To: ALL                             Num: 257        Date:  4/01/1992
  8523. From: WIM JANSSEN                      Re:            Time: 11:56 pm
  8524. Subj: BootCtrl.Btm 3/3               Prvt: N          Read: N
  8525.  
  8526. ---Begin part [3/3] of BootCtrl.Btm
  8527.  
  8528. :Continue
  8529. Echo Last(Ram)Drive = %_LastDisk
  8530. Log Last(Ram)Drive = %_LastDisk
  8531. If %BootNmb NE 0 Log Rebooting Succesfull!
  8532. @Rem =============================
  8533. @Rem Extra Configuration Here ....
  8534. @Rem =============================
  8535. Goto Out
  8536.  
  8537. :Abort
  8538. Echo Aborting Reboot Routine ..
  8539. Log Aborting Reboot Routine ..
  8540. Goto NoSucces
  8541.  
  8542. :NoTime
  8543. Log An old Boot.Inf File Found? MaxDiff=%MaxDiff LT BootDiff=%BootDiff sec.
  8544.  
  8545. @Rem       ++++++++++++++     LOOP DANGER      +++++++++++++++++
  8546. @Rem +++++++ Only activate when everything has been checked!!! +++++++++
  8547. @Rem       +++++++++++++++++++++++++++++++++++++++++++++++++++++
  8548. @Rem PS. It will work also (in most/normal cases) without these instructions.
  8549.  
  8550. @Rem If Exist %BootInfo Del %BootInfo
  8551. @Rem Log Rebooting System!
  8552. @Rem Reboot /C
  8553. @Rem Log Error in 4Dos command: Reboot /C!
  8554.  
  8555. @Rem +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  8556.  
  8557. :NoSucces
  8558. Set BootNmb=%@Eval[%BootNmb-1]
  8559. Log (%BootNmb x) Rebooting Not Succesfull!
  8560. @Rem =============================
  8561. @Rem Extra Configuration Here ....
  8562. @Rem =============================
  8563.  
  8564. :Out
  8565. If Exist %BootInfo Del %BootInfo
  8566. EndLocal
  8567.  
  8568. --- End part [3/3] of BootCtrl.Btm
  8569. <eof>
  8570.  
  8571. Groetjes,
  8572. Wim Janssen
  8573.  
  8574. ---
  8575.  * Origin: Point of "The Ultimate", 31-53-303902/328506 (2:512/32.9)
  8576.  
  8577. ------------------------------------------------------------------------
  8578.  
  8579. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  8580.  
  8581.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  4/08/1992
  8582.   To: ALL                             Num: 264        Date:  4/02/1992
  8583. From: RON FABRE                        Re:            Time:  2:30 pm
  8584. Subj: Another Dumb Dittie            Prvt: N          Read: N
  8585.  
  8586. Attach column three under two, then two under one.
  8587.  
  8588. echos Through      echos  re           beep 494 8
  8589. beep 440 8         beep 294 8          echos  or
  8590. echos  ear         echos a             beep 587 8
  8591. beep 392 8         beep 262 4          echos  leave
  8592. echos ly           echos lize          beep 659 8
  8593. beep 349 4         beep 294 8          echos  it
  8594. echos  morn        echos  and          beep 587 8
  8595. beep 392 8         beep 262 8          echos  if
  8596. echos ing          echos  I            beep 494 8
  8597. beep 349 8         beep 294 8          echos  I
  8598. echos  fog         echos  can          beep 440 8
  8599. beep 392 8         beep 330 8          echo  please,
  8600. echos  I           echos  see          beep 494 24
  8601. beep 349 8         beep 349 24         echos And
  8602. echos  see         echos  that         beep 440 8
  8603. beep 330 12        beep 440 8          echos  you
  8604. echos  vi          echos  su           beep 349 8
  8605. beep 349 8         beep 494 8          echos  can
  8606. echos sions        echos i             beep 440 8
  8607. beep 330 4         beep 440 4          echos  do
  8608. echos  of          echos cide          beep 494 8
  8609. beep 349 8         beep 494 8          echos  the
  8610. echos  the         echos  is           beep 587 8
  8611. beep 330 8         beep 440 8          echos  same
  8612. echos  things      echos  pain         beep 659 8
  8613. beep 349 8         beep 494 8          echos  thing
  8614. echos  to          echo less,          beep 587 8
  8615. beep 330 8         beep 440 8          echos  if
  8616. echos  be:         beep 19 8           beep 494 8
  8617. beep 294 12        echos It            echos  you
  8618. beep 19 4          beep 440 8          beep 440 8
  8619. echos  The         echos  brings       echos  please.
  8620. beep 349 4         beep 494 8          beep 494 24
  8621. echo  pains        echos  on
  8622. beep 330 8         beep 440 4
  8623. echos that         echos  man
  8624. beep 294 4         beep 494 8
  8625. echos  are         echos y
  8626. beep 330 8         beep 440 8
  8627. echos  with        echos  chang
  8628. beep 294 8         beep 494 8
  8629. echos held         echos es,
  8630. beep 330 8         beep 440 8
  8631. echos  for         echos  And
  8632. beep 294 8         beep 440 8
  8633. echos  me.         echos  I
  8634. beep 262 12        beep 349 8
  8635. beep 19 4          echos  can
  8636. echos   I          beep 440 4
  8637. beep 330 4         echos  take
  8638.  
  8639.  
  8640.   Regards...
  8641.       Ron Fabre...
  8642.  
  8643. --- XRS! 5+DV
  8644.  * Origin: Has anyone seen a recession? I can't find it! (RA 3:634/383)
  8645.  
  8646. ------------------------------------------------------------------------
  8647.  
  8648. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  8649.  
  8650.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  4/08/1992
  8651.   To: ALL                             Num: 263        Date:  4/02/1992
  8652. From: RON FABRE                        Re:            Time:  2:29 pm
  8653. Subj: Dumb Ditties                   Prvt: N          Read: N
  8654.  
  8655. I recently uploaded this tune, but apparently it got scrambled at about the
  8656. halfway mark, so here it is again, but split into three columns. Simply edit
  8657. and attach column three to the end of column two, and column two to the end
  8658. of column one. Sorry for any confusion.
  8659.  
  8660. screen 10 0        echos  prose,       beep 392 24
  8661. echos In           beep 587 20         beep 19 8
  8662. beep 392 4         beep 19 8           echos So
  8663. echos  old         echos  An           beep 392 8
  8664. beep 392 8         beep 523 4          echos  though
  8665. echos en           echos y             beep 392 8
  8666. beep 440 8         beep 523 4          echos  I'm
  8667. echos  days        echos thing         beep 440 8
  8668. beep 330 8         beep 523 8          echos  not
  8669. echos  a           echo  Goes.         beep 330 8
  8670. beep 392 8         beep 523 16         echos  a
  8671. echos  glimpse     beep 19 8           beep 392 8
  8672. beep 440 8         beep 19 8           echos  great
  8673. echos  of          echos The           beep 440 8
  8674. beep 392 4         beep 494 4          echos  ro
  8675. echos  stock       echos  world        beep 392 4
  8676. beep 440 4         beep 494 4          echos manc
  8677. echos              beep 494 4          beep 440 4
  8678. beep 440 4         echos  has          beep 440 4
  8679. echos ing          beep 494 4          echos er
  8680. beep 392 4         echos  gone         beep 392 4
  8681. echos  was         beep 494 8          echos  I
  8682. beep 330 8         echos  mad          beep 330 8
  8683. echos  looked      beep 494 8          echos  know
  8684. beep 392 4         echos  to           beep 392 4
  8685. echos  on          beep 494 4          echos  that
  8686. beep 440 8         echos day           beep 440 8
  8687. echos  as          beep 494 4          echos  you're
  8688. beep 330 4         beep 494 4          beep 330 4
  8689. echos  some        echos  And          echos  bound
  8690. beep 392 8         beep 494 4          beep 392 8
  8691. echos thing        echos  good's       echos  to
  8692. beep 440 4         beep 494 8          beep 440 4
  8693. echos  shock       echos  bad          echos  an
  8694. beep 523 4         beep 554 8          beep 523 4
  8695. beep 523 4         echos  to           beep 523 4
  8696. echo ing,          beep 494 4          echos swer
  8697. beep 440 4         echos day,          beep 440 4
  8698. echos Now          beep 494 4          echos  when
  8699. beep 523 8         beep 494 4          beep 523 8
  8700. echos  heav        echos  And          echo  I
  8701. beep 587 8         beep 494 4          beep 587 8
  8702. echos en           echos  black's      echos pro
  8703. beep 659 8         beep 494 8          beep 659 8
  8704. echos  knows,      echos  white        echos pose
  8705. beep 587 20        beep 587 8          beep 587 32
  8706. beep 19 8          echos  to           beep 19 8
  8707. echos  An          beep 494 4          echos  An
  8708. beep 523 4         echo day,           beep 659 4
  8709. echos y            beep 494 4          echos y
  8710. beep 523 4         beep 494 4          beep 587 4
  8711. echos thing        echos And           echos thing
  8712. beep 523 8         beep 494 4          beep 523 8
  8713. echo  Goes.        echos  day's        echos  Goes.
  8714. beep 523 20        beep 494 8          beep 523 32
  8715. beep 19 8          echos  night
  8716. beep 19 8          beep 622 8
  8717. echos Good         echos  to
  8718. beep 392 8         beep 494 4
  8719. echos  auth        echos day,
  8720. beep 392 8         beep 494 4
  8721. echos ors          beep 494 4
  8722. beep 440 8         echos  When
  8723. echos  too         beep 494 4
  8724. beep 330 8         echos  most
  8725. echos  who         beep 494 8
  8726. beep 392 8         echos  guys
  8727. echos  once        beep 659 8
  8728. beep 440 8         echos  to
  8729. echos  knew        beep 494 4
  8730. beep 392 4         echos day
  8731. echos  bet         beep 494 4
  8732. beep 440 4         beep 494 4
  8733. beep 440 4         echos  that
  8734. echos ter          beep 466 4
  8735. beep 392 4         echos  wo
  8736. echos  words,      beep 494 4
  8737. beep 330 8         echos men
  8738. echos  now         beep 466 4
  8739. beep 392 4         echos  prize
  8740. echos  on          beep 494 8
  8741. beep 440 8         echos  to
  8742. echos ly           beep 330 4
  8743. beep 330 4         echos day,
  8744. echos  use         beep 330 4
  8745. beep 392 8         beep 330 4
  8746. echos  four        echos  are
  8747. beep 440 4         beep 156 4
  8748. echos  let         echo  just
  8749. beep 523 4         beep 330 8
  8750. beep 523 4         echos sil
  8751. echos ter          beep 330 4
  8752. beep 440 4         echos ly
  8753. echo  words        beep 330 4
  8754. beep 523 8         echos  gi
  8755. echos writ         beep 156 8
  8756. beep 587 8         echos go
  8757. echos ing          beep 330 8
  8758. beep 659 8         echo los;
  8759.  
  8760.  
  8761.   Regards...
  8762.       Ron Fabre...
  8763.  
  8764. --- XRS! 5+DV
  8765.  * Origin: I've chosen not to participate in the recession... (RA 3:634/383)
  8766.  
  8767. ------------------------------------------------------------------------
  8768.  
  8769. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  8770.  
  8771.  BBS: ASTRIX          Conference: 4DOS            Imported:  4/12/1992
  8772.   To: ALL                             Num: 12189      Date:  4/10/1992
  8773. From: GREG VAIDMAN                     Re: 0          Time: 12:20 am
  8774. Subj: 4OS2 info                      Prvt: N          Read: N
  8775.  
  8776. ╓─────────┤ on 04-07-92 (22:46), david fox said to dave kalwishky ├──────────╖
  8777. ║ Since 4OS2 is an OS/2 program, it's preferable (at least IMHO) to run      ║
  8778. ║ it instead of 4DOS in a penalty box.  There are internal things in         ║
  8779. ║ CMD.EXE that don't have any meaning under DOS, so they're not to be        ║
  8780. ║ found in 4DOS either.  OTOH, 4OS2 will have these OS/2 specific things.    ║
  8781. ╙────────┤ and greg vaidman replied on fri, 04-10-1992 at 01:45... ├─────────╜
  8782.  
  8783.     The way I see it ( or should i say IMHO ) you will probably want
  8784.     to use both 4DOS and 4OS2.  You would simply run 4OS2 instead of
  8785.     CMD.EXE and 4DOS instead of COMMAND.COM.  You don't want to lose
  8786.     the functionality of 4DOS in a DOS box, so you really need both.
  8787.  
  8788.     Important excerpts from the docs for 4OS2 version .95 follow...
  8789.     (Paragraphs which start with quotes are direct excerpts, others
  8790.     are reworded/paraphrased for brevity.)
  8791.  
  8792.     ╓──────────────────────────────────────────────────────────────────╖
  8793.     ║ The default command separator in 4OS2 is the ampersand [&] and   ║
  8794.       the default escape character is the caret [^].
  8795.       ...
  8796.      "In addition to the extended 4DOS redirection options, 4OS2
  8797.       also the supports the OS/2 (CMD.EXE) syntax "n>" and ">n".
  8798.       ...
  8799.       Pipes are implemented differently; instead of running one
  8800.       command, collecting the output and then running the next
  8801.       command, OS/2 runs both commands simultaneously.  Therefore,
  8802.       commands like "echo test | input %%var" will not work because
  8803.       a new process is started for the "input" command and its
  8804.       environment is lost when that process ends.
  8805.       ...
  8806.      "The following internal variables are unique to 4OS2:
  8807.            _PID is the current process ID number.
  8808.            _PPID is the process ID number of the parent process.
  8809.            _SID is the session ID number.
  8810.            _PTYPE is the current OS/2 process type...
  8811.       ...
  8812.      "The following 4DOS internal variables are not available in 4OS2:
  8813.            _ALIAS (because 4OS2 dynamically sizes the alias list).
  8814.            _DV (because DESQView does not run under OS/2).
  8815.            _ENV (because the environment size is adjusted dynamically)
  8816.            _WIN (because Windows does not run in OS/2)
  8817.       ...
  8818.      "The following variable functions are available only in 4OS2:
  8819.            @EXETYPE[filename]:  Returns the application type...
  8820.            @FSTYPE[d:]: Returns the file system type for the drive...
  8821.       ...
  8822.      "4OS2 recognizes 5 optional fields on the command line.  If you
  8823.       use more than one of these fields, their order is important.
  8824.       The syntax for the commands is
  8825.          [d:\path] [@d:\path\inifile] [/S] [//iniline]... [/C|/K] [command]
  8826.       ...
  8827.      "The following 4DOS.INI directives may not be used in a
  8828.       4OS2.INI file.  These directives are specific to DOS features
  8829.       or limitations which do not exist in OS/2:
  8830.            Alias         EnvFree      LineInput      StackSize
  8831.            ANSI          Environment  MessageServer  Swapping
  8832.            AutoExecPath  FineSwap     NetwareNames   SwapReopen
  8833.            DiskReset     FullINT2E    Reduce         UMBEnvironment
  8834.            DVCleanup     HelpOptions  ReserveTPA     UMBLoad
  8835.                          HelpPath                    UniqueSwapName
  8836.       ...
  8837.      "The following commands are unique to 4OS2:
  8838.            DETACH  (start an OS/2 program in detached mode)
  8839.            DPATH  (set the search path for data files)
  8840.            KEYS  (alternate command to enable/display history...
  8841.            START  (start a program in a new session)
  8842.       ...
  8843.      "The following 4DOS commands are not available in 4OS2:
  8844.            BREAK                      LOADHIGH / LH
  8845.            CTTY                       SWAPPING
  8846.            KEYSTACK                   TRUENAME
  8847.       ...
  8848.      "Finally, the /M(aster environment) option is not available in
  8849.       the 4OS2 versions of ESET, SET, and UNSET.
  8850.       ...
  8851.      "A final release of 4OS2, version 1.0, is expected to ship in late
  8852.       April or early May of 1992, after IBM has issued the public GA re-
  8853.       lease of OS/2 2.0 and JP Software has had time to incorporate and
  8854.       test any necessary changes in 4OS2.
  8855.       ...
  8856.      "A bundled package of 4OS2 and 4DOS together is $89; 4OS2 alone
  8857.       is $69.  Registered 4DOS users can purchase 4OS2 at a special
  8858.     ║ discount price of $29.                                           ║
  8859.     ╙──────────────────────────────────────────────────────────────────╜
  8860.  
  8861.       This should help clear up "a lot of stuff"!  I hope you all
  8862.       enjoyed it...  and I hope it all fit within the line limit of
  8863.       the net!
  8864.                                                                 OΓεO Vαîδµα∩
  8865.                                                                 ⌡  ⌡
  8866. ---
  8867.  ■ OLX 2.1 ■ You can't have everything - where would you put it?
  8868.  
  8869. PCRelay:DATABASE -> #1251 RelayNet (tm)
  8870.                                                                            
  8871.  
  8872. ------------------------------------------------------------------------
  8873.  
  8874. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  8875.  
  8876.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  4/12/1992
  8877.   To: BERNARD SPEIGHT                 Num: 364        Date:  4/10/1992
  8878. From: TOM RAWSON                       Re:            Time: 12:45 am
  8879. Subj: Keystack with WP 5.15          Prvt: N          Read: N
  8880.  
  8881.  BS> "The objective was to invoke WP with a specified document file.  In
  8882.  BS> general, the approach was to change directory to the required document 
  8883.  BS> directory, and invoke WP (which  is on the path) from there.  Once 
  8884.  BS> inside WP, I wanted Keystack to get a LIST, which is F5, then <enter>.
  8885.  
  8886.  BS> "Accordingly, my alias looked like this:
  8887.  
  8888.  BS> ALIAS WJP = `PUSHD^KEYSTACK F5 ENTER^CD C:\WJPSTEXT^WP^POPD`
  8889.  
  8890.  BS> "This did not work.  I got a response to F5, followed by a screen 
  8891.  BS> display of <up arrow>M (ie Ctrl-M), but no list, implying it never 
  8892.  BS> recognised the ENTER.
  8893.  
  8894. See the KEYSTACK docs, which I believe discuss this specific situation.  WP
  8895. 5.1 needs both the scan code and the ASCII code for enter, combined as 256 *
  8896. scan code + ASCII code which is 7181.  So use KEYSTACK F5 7181.
  8897.  
  8898. Here's my WP alias that takes two args on the command line and loads them
  8899. into the two documents:
  8900.  
  8901.    wp=iff %# gt 1 then^keystack @86 @93 "%2" @65 @86^endiff^
  8902.       e:\wp51\wp.exe %1 %3&
  8903.  
  8904.  
  8905.                                                             ... Tom
  8906.  
  8907.  
  8908. --- EZPoint V2.1
  8909.  * Origin: Tom's EZPoint (1:130/29.110)
  8910. 
  8911. ------------------------------------------------------------------------
  8912.  
  8913. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  8914.  
  8915.  BBS: ASTRIX          Conference: 4DOS            Imported:  4/17/1992
  8916.   To: CHRIS CHEATHAM                  Num: 12214      Date:  4/12/1992
  8917. From: RICK JOSEPH                      Re: 0          Time:  4:26 am
  8918. Subj: BATCH FILES                    Prvt: N          Read: N
  8919.  
  8920. │        Does anybody know how to set the time in which a batch file will
  8921. │execute? If yes leave me a message! Thanks, Chris Cheatham
  8922. └─────────────────────────────────────────────────────────────────────────
  8923.  
  8924. Without using a TSR, you'll have to dedicate your system to running a
  8925. batch file loop until the specified time.  Aside from that, the
  8926. following should do nicely:
  8927.  
  8928.  
  8929.    IF "%1"=="" QUIT
  8930.    :LOOP
  8931.    IF %@SUBSTR[%1,0,5] NE %@SUBSTR[%_TIME,0,5] GOTO LOOP
  8932.  
  8933.  
  8934. You'll have to be careful of a couple of things....  Make sure that your
  8935. system time is correct before you run this, and be QUITE sure that you
  8936. run the batch file with the exact time you want the event to occur.
  8937.  
  8938. Name the file WAITFOR.BTM and then run it from your "parent" batch file
  8939. with the time you want the event to occur, like:
  8940.  
  8941.    CALL WAITFOR 02:30
  8942.  
  8943. Then, at 2:30 am, whatever instructions are below this line in the batch
  8944. file will start to execute.
  8945.  
  8946. Hope you can make some use of this.
  8947.  
  8948. Later,
  8949.  
  8950. Rick
  8951.  
  8952.  
  8953. PCRelay:FILEBANK -> #246 RelayNet (tm)
  8954. 4.11                The File Bank 619-728-4318 - Clipper Central
  8955.                                                                           
  8956. PCRelay:DCINFO -> #16 MetroLink (tm) International Network
  8957. 4.10              DC Info Exchange MetroLink International Hub
  8958.      
  8959.  
  8960. ------------------------------------------------------------------------
  8961.  
  8962. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  8963.  
  8964.  BBS: ASTRIX          Conference: 4DOS            Imported:  4/17/1992
  8965.   To: HAROLD DRABKIN                  Num: 12205      Date:  4/12/1992
  8966. From: DAVID KUNZ                       Re: 0          Time:  3:57 pm
  8967. Subj: DESCRIPT.ION FFILES            Prvt: N          Read: N
  8968.  
  8969. HD║ I recently ran norton's speed disk to get a fragmentation map.  I
  8970. HD║ hadn't bothered to unhide the *.ion files, since I wasn't going to
  8971. HD║ perform an unfragment.  Now, this was the first time I've used
  8972. HD║ this program.  I saw that it had marked unmovable files with "X".
  8973. HD║ I then viewed the files.  The very first ones, as one might guess,
  8974. HD║ were the system files.  Then a couple of descript.ion files;  The
  8975. HD║ next set was about 1/2 through the drive.  All contiguous, all
  8976. HD║ description files.  Now, I have lots of subdirectories, with lots
  8977. HD║ of descriptions.  Does 4dos actually attempt to cluster them all
  8978. HD║ in one disk location if possible?
  8979.  
  8980. Most defrag programs won't touch hidden files.  I just unhide them
  8981. with a 4dos batch then defrag and them hide them again.  Could do this
  8982. all in one batch file I guess, but I never got around to it.
  8983.  
  8984. unhide.btm -- unhides %1 in all directories on the disk
  8985. pushd \^global /iq if exist %1 for %%FF in (%1) attrib -h %%FF^popd
  8986.  
  8987. hide.btm -- hides %1 in all directories on the disk
  8988. pushd \^global /iq if exist %1 for %%FF in (%1) attrib +h %%FF^popd
  8989.  
  8990. Hope that this helps!
  8991. David Kunz
  8992. ---
  8993.  ■ MegaReader : No program is idiot-proof, idiots are ingenious!
  8994.  
  8995. PCRelay:WTHREEJP -> #75 RelayNet (tm)
  8996.  
  8997.                           
  8998.  
  8999. ------------------------------------------------------------------------
  9000.  
  9001. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  9002.  
  9003.  BBS: ASTRIX          Conference: 4DOS            Imported:  4/17/1992
  9004.   To: KINLEY BRAUER                   Num: 12239      Date:  4/15/1992
  9005. From: DENNIS MCCUNNEY                  Re: 0          Time:  7:45 pm
  9006. Subj: MORE ALIASES                   Prvt: N          Read: N
  9007.  
  9008. KB> I still think the best rapid change-directory alias (with LCD in this
  9009. KB> case, but the others will do just as well) is one a few of us worked
  9010. KB> out a while ago.  It is:
  9011. KB>
  9012. KB> CD=IFF "%1"=="" THEN^CDD C:\^ELSEIFF ISDIR %1 THEN^CDD %1^ELSE
  9013. KB>    C:\LCD %1^ENDIFF^CLS
  9014.  
  9015.     I use a different variant that uses pushd and LCD, and handles the
  9016. case where LCD needs to rescan the directory structure.  The LCD alias
  9017. is formatted for clarity below, but should be all on one line with ^
  9018. seperating the clauses.
  9019.  
  9020. CD=lcd
  9021.  
  9022. LCD=pushd
  9023.     iff "%1" eq "" then
  9024.         *lcd
  9025.     elif "%@substr[%1,3,-4]" eq "scan" then
  9026.         *lcd %1
  9027.     else
  9028.         *lcd %& /m
  9029.     end
  9030.  
  9031. PCRelay:RUNNINGB -> #3 RelayNet (tm)
  9032. 4.11                Running Board 2126541349/DS/2125191791/HST/
  9033.    
  9034.  
  9035. ------------------------------------------------------------------------
  9036.  
  9037. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  9038.  
  9039.  BBS: ASTRIX          Conference: 4DOS            Imported:  4/17/1992
  9040.   To: LOREN OLSON                     Num: 12238      Date:  4/15/1992
  9041. From: DENNIS MCCUNNEY                  Re: 0          Time:  7:45 pm
  9042. Subj: SELECT                         Prvt: N          Read: N
  9043.  
  9044. LO> I am finding so many uses for the select command now.  But, I would to
  9045. LO> find a way to assign the select command to different keys.  I suspect
  9046. LO> this can be done.  In this way I could use copy, delete, move and so on
  9047. LO> in a much easier fashion.
  9048.  
  9049.     You mean like this?
  9050.  
  9051. _=%@select[%cfg\keys.hlp,1,1,23,30, Key Definitions ]
  9052.  
  9053.     This alias creates a popup help screen for keys I have defined in
  9054. 4DOS.  It invokes the SELECT varaible function, and uses a help file
  9055. stored in a directory called \usr\cfg, which is referred to by the %cfg
  9056. variable.  This alias is then assigned to Alt-H, as "@alt-h=_r".  (I
  9057. could have simply assigned the alias to Alt-H, but this method avoids
  9058. stuffing it in my history file and makes for a cleaner screen display.)
  9059.  
  9060. ┌───── Key Definitions ──────┐      When Alt-H is pressed, this
  9061. │ F2        Flix             │  display results.  Changes are simple,
  9062. │ F3        Memory           │  since the source text is in a simple
  9063. │ F4        Cache            │  ASCII file.
  9064. │ F5        Mapmem           │
  9065. │ F6        Vtree            │
  9066. │ F7        Kb               │
  9067. │ Alt-F1    Dir /w           │
  9068. │ Alt-A     Edit aliases     │
  9069. │ Alt-B     Blue Wave        │
  9070. │ Alt-C     Cls              │
  9071. │ Alt-D     DF               │
  9072. │ Alt-E     Edit             │
  9073. │ Alt-F     Free             │
  9074. │ Alt-H     This listing     │
  9075. │ Alt-L     List             │
  9076. │ Alt-Q     Qedit            │
  9077. │ Alt-S     Session Manager  │
  9078. │ Alt-T     Telix            │
  9079. │ Alt-W     WP               │
  9080. │ Alt-X     Exit             │
  9081. │ Ctrl-PgUp Back             │
  9082. └─────────    or Esc ──────┘
  9083.  
  9084.  
  9085. PCRelay:RUNNINGB -> #3 RelayNet (tm)
  9086. 4.11                Running Board 2126541349/DS/2125191791/HST/
  9087.                                                                                              
  9088. PCRelay:DCINFO -> #16 MetroLink (tm) International Network
  9089. 4.10              DC Info Exchange MetroLink International Hub
  9090.      
  9091.  
  9092. ------------------------------------------------------------------------
  9093.  
  9094. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  9095.  
  9096.  BBS: ASTRIX          Conference: 4DOS            Imported:  4/18/1992
  9097.   To: ROBERT REED                     Num: 12258      Date:  4/16/1992
  9098. From: DAVID KUNZ                       Re: 0          Time:  8:38 pm
  9099. Subj: SELECT                         Prvt: N          Read: N
  9100.  
  9101. RR║ I use the select command to copy,del,move,run,attrib,unzip,zip
  9102. RR║ ex. sdel=select del (%1)
  9103. RR║ hope i could help, write back
  9104.  
  9105. I stole this idea for this from someone else and modified it:
  9106.  
  9107. DO=iff "%2"=="" then select %1 (*.*)^else select %1 (%2) %3&^endiff
  9108.  
  9109. To use it: "do del" is the same as "select del (*.*)"; do del *.bak is
  9110. the same as your sdel *.bak; do copy a: b: copies selected files from
  9111. a to b, etc.
  9112.  
  9113. David Kunz
  9114. ---
  9115.  ■ MegaMail : Keep American Beautiful...  TRASH a lawyer!
  9116.  
  9117. PCRelay:WTHREEJP -> #75 RelayNet (tm)
  9118.                                                                                                               
  9119. PCRelay:DCINFO -> #16 MetroLink (tm) International Network
  9120. 4.10              DC Info Exchange MetroLink International Hub
  9121.      
  9122.  
  9123. ------------------------------------------------------------------------
  9124.  
  9125. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  9126.  
  9127.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  4/18/1992
  9128.   To: ALL                             Num: 506        Date:  4/13/1992
  9129. From: TONY DUNLAP                      Re:            Time:  9:35 am
  9130. Subj: Menu.btm Update                Prvt: N          Read: N
  9131.  
  9132. I have recently updated my MENU.BTM to work faster under 4dos 4.0
  9133.  
  9134. For those not familiar with it it offers:
  9135.  Single key launching of your programs.
  9136.  Optional password protection.
  9137.  On-screen clock and diskspace and memory free
  9138.  A neat screen blanker.
  9139.  The ability to run programs at a certain time.
  9140.  
  9141. 07-24-91 -- Initial release
  9142. 10-09-91 -- Fixed bug in password sub that would let user run the
  9143.             program by putting a space in the password field.
  9144. 11-14-91 -- Fixed an error in the blanking that showed up under
  9145.             4DOS 4.00.
  9146. 04-11-92 -- Rearanged some of the code to speed it up and reduced
  9147.             the size by replacing 3.xx commands with 4.xx ones.
  9148.             After removing comments BTM is less than 4000 bytes.
  9149.             Now requires 4DOS 4.xx
  9150.  
  9151. The latest version will always be available for F'req (ONLY!) at
  9152. 1:2220/30 as 4MENU.ARJ (currently 3283 bytes)
  9153.  
  9154. If you need a high speed source or want to log on and download it, it is
  9155. also available at the OUTER LIMITS, 1:2220/10  1-614-772-5520
  9156.  
  9157. ---
  9158.  * Origin: ODOT District 9 (1:2220/30)
  9159.  
  9160. ------------------------------------------------------------------------
  9161.  
  9162. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  9163.  
  9164.  BBS: ASTRIX          Conference: 4DOS            Imported:  4/20/1992
  9165.   To: DENNIS MCCUNNEY                 Num: 12288      Date:  4/17/1992
  9166. From: KINLEY BRAUER                    Re: 0          Time:  8:49 am
  9167. Subj: MORE ALIASES                   Prvt: N          Read: N
  9168.  
  9169. DM>>KB> CD=IFF "%1"=="" THEN^CDD C:\^ELSEIFF ISDIR %1 THEN^CDD %1^ELSE
  9170. DM>>KB>    C:\LCD %1^ENDIFF^CLS
  9171.  
  9172. DM>>    I use a different variant that uses pushd and LCD, and handles the
  9173. DM>>case where LCD needs to rescan the directory structure.  The LCD alias
  9174. DM>>is formatted for clarity below, but should be all on one line with ^
  9175. DM>>seperating the clauses.
  9176.  
  9177. DM>>CD=lcd
  9178. DM>>LCD=pushd
  9179. DM>>    iff "%1" eq "" then
  9180. DM>>        *lcd
  9181. DM>>    elif "% substr[%1,3,-4]" eq "scan" then
  9182. DM>>        *lcd %1
  9183. DM>>    else
  9184. DM>>        *lcd %& /m
  9185. DM>>    end
  9186.  
  9187. Nice. Mine allows me to move around to drives A, B, and D, and get
  9188. back to my root in C easily. But I also have two other LCD aliases:
  9189.  
  9190. LCD=IFF "%1"=="" THEN *LCD *^CLS^ELSE *LCD %1&^ENDIFF
  9191. LCDSCAN=PUSHD^\LCD /QSCAN^POPD
  9192.  
  9193. It's always nice to be able to look at the directory list with a plain
  9194. old LCD! That's why I have the first; the second is a minor shortcut
  9195. to rescanning. I may see about incorporating your idea into mine to
  9196. get the best of both worlds . . .
  9197. ---
  9198.  ■ OLX 2.2 ■ #3620 ■ Minneapolis, MN
  9199.  
  9200. PCRelay:BYTELINE -> #365 RelayNet (tm)
  9201.                                                                 
  9202.  
  9203. ------------------------------------------------------------------------
  9204.  
  9205. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  9206.  
  9207.  BBS: ESCMAIL         Conference: 4-DOS(ECHO      Imported:  4/24/1992
  9208.   To: KEVIN HIGGINS                   Num: 599        Date:  4/20/1992
  9209. From: TONY DUNLAP                      Re:            Time: 10:07 am
  9210. Subj: DOS 5: boot from a RAM d       Prvt: N          Read: N
  9211.  
  9212.  >     It must be too early in the morning, since I can't figure out
  9213.  > how you'd get files copied to your ramdrive prior to running
  9214.  > autoexec.bat...
  9215.  
  9216. It was in this echo a couple of weeks ago. You need to make an archive
  9217. containing your 4dos files and use the INSTALL command in your config.sys to
  9218. unarc them into your ramdisk. Then set SHELL= to the ramdisk.
  9219.  
  9220. example:
  9221.  
  9222. DEVICE=RAMDISK.SYS etc.
  9223. INSTALL=C:\UTILS\ARJ E C:\4DOS\4DFILES.ARJ D:\
  9224. SHELL=D:\4DOS.COM
  9225.  
  9226. where 4dfiles.arj is the archive containing the 4dos files.
  9227.  
  9228. Install is normally used to install TSRs and will complain that ARJ doesn't
  9229. remain resident but it will work nonetheless.
  9230.  
  9231. You could also make the archive file self-extracting. Handy if you were on a
  9232. workstation that had to boot from a floppy, but since I keep
  9233. the archiver on my hard drive anyway, I opted to save a couple of K in disk
  9234. space.
  9235.  
  9236. Later
  9237.  
  9238. ---
  9239.  * Origin: ODOT District 9 (1:2220/30)
  9240.  
  9241. ------------------------------------------------------------------------
  9242.  
  9243. Echo Flag : Y       Permanent: N       Export: N      Personal Read: N
  9244.  
  9245.  BBS: ASTRIX          Conference: 4DOS            Imported:  4/24/1992
  9246.   To: HAROLD DRABKIN                  Num: 12205      Date:  4/12/1992
  9247. From: DAVID KUNZ                       Re: 0          Time:  3:57 pm
  9248. Subj: DESCRIPT.ION FFILES            Prvt: N          Read: N
  9249.  
  9250. HD║ I recently ran norton's speed disk to get a fragmentation map.  I
  9251. HD║ hadn't bothered to unhide the *.ion files, since I wasn't going to
  9252. HD║ perform an unfragment.  Now, this was the first time I've used
  9253. HD║ this program.  I saw that it had marked unmovable files with "X".
  9254. HD║ I then viewed the files.  The very first ones, as one might guess,
  9255. HD║ were the system files.  Then a couple of descript.ion files;  The
  9256. HD║ next set was about 1/2 through the drive.  All contiguous, all
  9257. HD║ description files.  Now, I have lots of subdirectories, with lots
  9258. HD║ of descriptions.  Does 4dos actually attempt to cluster them all
  9259. HD║ in one disk location if possible?
  9260.  
  9261. Most defrag programs won't touch hidden files.  I just unhide them
  9262. with a 4dos batch then defrag and them hide them again.  Could do this
  9263. all in one batch file I guess, but I never got around to it.
  9264.  
  9265. unhide.btm -- unhides %1 in all directories on the disk
  9266. pushd \^global /iq if exist %1 for %%FF in (%1) attrib -h %%FF^popd
  9267.  
  9268. hide.btm -- hides %1 in all directories on the disk
  9269. pushd \^global /iq if exist %1 for %%FF in (%1) attrib +h %%FF^popd
  9270.  
  9271. Hope that this helps!
  9272. David Kunz
  9273. ---
  9274.  ■ MegaReader : No program is idiot-proof, idiots are ingenious!
  9275.  
  9276. PCRelay:WTHREEJP -> #75 RelayNet (tm)
  9277.                              
  9278.  
  9279. ------------------------------------------------------------------------
  9280.  
  9281. Echo Flag :         Permanent: N       Export: N      Personal Read: N
  9282.  
  9283.  BBS: ESCMAIL         Conference: 4dos(ECHO)      Imported:  4/28/1992
  9284.   To: ALL                             Num: 27         Date:  4/21/1992
  9285. From: HENRIK JACOBSEN                  Re:            Time: 11:45 pm
  9286. Subj: Aliases                        Prvt: N          Read: N
  9287.  
  9288. Hello All
  9289.  
  9290. Aliases is just the best is it just me or are all you other just as happy for
  9291. them as i am?
  9292.  
  9293. Did you know that if you write an directory name with the full path and a
  9294. backslash at the end, then 4dos automatically goes to that directory on that
  9295. drive, example : you are on c:\games\spell and you type : e:\temp\
  9296. then your current directory changes to e:\temp ....pretty nice and i did'nt
  9297. know it until now that explains my last alias, it goes on step back!
  9298.  
  9299. a2a = dtrans
  9300. b2b = dtrans b: b:
  9301. a2c = xcopy a: c: /s
  9302. a2b = xcopy a: b: /s
  9303. d2c = xcopy d: c: /s
  9304. d2a = xcopy d: a: /s
  9305. c2a = xcopy c: a: /s
  9306. c2b= xcopy c: b: /s
  9307. dd = dir %1 %2 %3 %4 /a:d
  9308. cd = ctty nul ^ iff isdir %1 then ^ *cdd %1 ^ else ^ ncd %1 %2 %3 %4 ^ endiff
  9309. ^ ctty con
  9310. rd = ctty nul ^ ncd rd %1 ^ ctty con
  9311. md = ctty nul ^ ncd md %1 ^ *cd %1 ^ ctty con
  9312. rm = *rm -r %1 %2 ^ ctty nul ^ ncd . /r ^ ctty con
  9313. log = list d:\log.txt ^ cls
  9314. erase = del %1 /p
  9315. delbak=ctty nul ^global /q del *.bak ^ctty con
  9316. d = hdir %1 %2
  9317. dw = dir %1 /4
  9318. dew = pushd %1 ^dir *.exe;*.com;*.bat /4^popd
  9319. de = pushd %1 ^dir *.exe;*.com;*.bat^popd
  9320. da = hdir a:
  9321. db =hdir b:
  9322. timer=iff "%1"=="" then ^ echo"Usage: TIMER 'cmdline' to time!" ^ else
  9323. ^*timer ^ %1 %2 %3 %4 %5 %6 ^ *timer ^ endiff
  9324. copy=iff "%1"=="½" then ^select *copy (%2) %3  ^ else ^*copy %1 %2 %3 %4 %5
  9325. %6 ^ endiff
  9326. move=iff "%1"=="½" then ^select *move (%2) %3  ^ else ^*move %1 %2 %3 %4 %5
  9327. %6 ^ endiff
  9328. del=iff "%1"=="" then ^ select *del (*.*) ^ else ^ *del %1 %2 %3 %4 %5 %6 ^
  9329. endiff
  9330. calc=echo Resultat = %@EVAL[%&]
  9331. ..=..\
  9332.  
  9333. Henrik
  9334.  
  9335. --- GoldED 2.31p
  9336.  * Origin: .2 one step beyond ! (2:230/171.2)
  9337.