home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 2 BBS / 02-BBS.zip / OS2PLST.SRC / BILL.MSG next >
Text File  |  1990-05-09  |  3KB  |  83 lines

  1. OS/2 version of Parselst v1.31, ported by Bill Andrus, 1:109/301.
  2.  
  3. (Note:  This program was modified on 05/08/90 to handle >9 consecutive
  4.         digits in phone number strings, and the version number was bumped
  5.         up at that time.)
  6.  
  7. If FIDOUSER.LST is specified, then a program conforming to the following
  8. command line must be provided:
  9.  
  10. QSort FIDOUSER.$$1 /+1 41 /+61 5 R /+41 13 R /+55 6 /Q /G
  11.  
  12. Where each field is defined by /+sc nc (starting, number of cols), with
  13. R to reverse the default ascending order to descending.  The /Q is the
  14. quiet switch, and /G specifies binary (v. ASCII) sort fields.  Debug
  15. or other binary editor can be used to edit this line to whatever is
  16. available under OS/2 (the default SORT.COM will NOT work), just insure
  17. the string remains NULL terminated.
  18.  
  19. Numerous problems with the original code were discovered, especially
  20. with null pointers causing TRAP 13 hits.  This code will now compile with
  21. /W3 with only six automatic data conversion warnings in PARSELST.C, and
  22. without the STDIO.C and LOWLEVEL.ASM actually generated a full Rev 6
  23. Nodelist on my system faster under OS/2 than the stock version under
  24. PC-DOS 4.01 does.  MUCH faster!
  25.  
  26. My Turbo AT has two MFM drives, and a relatively normal OS/2 SE 1.1 setup.
  27.  
  28. Here's my LISTGEN.CMD using ARC2.EXE and this PARSELST.EXE:
  29.  
  30. @Echo Here we go...
  31. @Echo off
  32. REM Start with Current NODELIST.A* in D:\Tmp, possible new NODEDIFF.A*
  33. REM in C:\Bink\Inbound.  Compile NODELIST.* in C:\Bink\Nodelist, then
  34. REM if new NODELIST, Archive it to D:\Tmp, and delete all NODELIST from
  35. REM C:\Bink\Nodelist, and any NODEDIFF.
  36. Set BBS=C:\Bink
  37. Set BINKLEY=C:\Bink\
  38. Set EXPMSG=2400
  39. Set FILE=C:\Bink\Inbound
  40. Set IN=C:\Bink\Inbound
  41. Set MAIL=C:\Bink\Mail
  42. Set OUT=C:\Bink\Outbound
  43. C:
  44. CD \Bink\Nodelist
  45. If Exist Node*.* Del Node*.* >Nul:
  46. If NOT Exist %FILE%\Nodediff.A* Goto Compile
  47. If Exist D:\Tmp\Nodediff.A* Del D:\Tmp\Nodediff.A* >Nul:
  48. CD %FILE%
  49. For %%D in (Nodediff.A*) Do Set ND=%%D
  50. Copy %FILE%\%ND% D:\Tmp >Nul:
  51. Del %FILE%\%ND% >Nul:
  52. CD \Bink\Nodelist
  53. >Nul: ARC2 EO D:\Tmp\%ND% Nodediff.*
  54. :Compile
  55. For %%L in (D:\Tmp\Nodelist.A*) Do Set ONLA=%%L
  56. >Nul: ARC2 EO %ONLA% Nodelist.*
  57. For %%O in (Nodelist.*) Do Set ONL=%%O
  58. REM Perform NODELIST 5/6 compile
  59. c:\Bink\ParseLst
  60. If Not ERRORLEVEL 0 Goto Exit
  61. :REM Now delete raw Nodelist
  62. Del %ONL% >Nul:
  63. If NOT Exist Nodediff.* Goto Exit
  64. Del Nodediff.* >Nul:
  65. For %%N in (Nodelist.0* Nodelist.1* Nodelist.2* Nodelist.3*) Do Set NNL=%%N
  66. >Nul: ARC2 A5 D:\Tmp\%NNL% %NNL%
  67. Ren D:\Tmp\%NNL% NODELIST.A*
  68. Del %NNL% >Nul:
  69. Del %ONLA% >Nul:
  70. :Exit
  71. Echo.
  72. Echo We're Out-ta Here!!!
  73.  
  74. I apologize to those that prefer highly commented batch files, but this is as
  75. good as it gets.  And, it works, nice and quietly.  I invoke it from my
  76. POINT.CMD file with the following line, located in the section for new mail:
  77.  
  78. If Exist %IN%\NODEDIFF.A* Call LISTGEN.CMD
  79.  
  80. I've tried to get this to compile and execute in Compact, but Medium is the
  81. best I could do.
  82.  
  83.