home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 2 BBS / 02-BBS.zip / ad109u18.zip / README.TXT < prev   
Text File  |  1997-04-23  |  121KB  |  2,459 lines

  1. Hagar WatCom 586 optimized AdeptXbbs Builds.
  2. ============================================
  3. *READ*
  4.  
  5. It has come to my attention that many of the sysops out there who
  6. have TCP/IP or IBM's Internet Connection installed do not have
  7. the local loopback setup correctly.  I sugest that you add the
  8. following line to you adept startup .cmd file or your system
  9. startup.cmd.
  10.  
  11. ifconfig lo 127.0.0.1
  12.  
  13. This will not effect the use of any other aspects of the operating
  14. system.  The local loopback should ALWAYS be setup, IBM's just too
  15. unbelievably stupid to setup up as a default (Almost every other
  16. OS that uses TCP/IP in the history of computers does) but some brain
  17. dead schmuck at IBM doesn't have a clue so you have to do it yourself.
  18.  
  19. The local loopback of 127.0.0.1 is required for *ALL* the new
  20. builds of the BBS software if you wish to have multinode chat work.
  21. This Includes the Vac builds being released by Betel (Chris Freeze).
  22. If you don't set this loopback up, adept will pause for up to two
  23. minutes at logon time while it looks for the chatserver, even if you
  24. have not started cserver.exe running adept still looks for this loopback
  25. address so SET THE LOOPBACK!!!
  26.  
  27. AdeptXBBS MUST have the local loopback to operate correctly to operate
  28.  correctly.  This means that you MUST have IAK installed, or Warp 4.
  29.  To set it up is not that hard but must be done.  To do this just follow
  30.  these simple steps.
  31.  
  32. 1) Edit or create the startup.cmd file in the root of your boot drive.
  33.  
  34. 2) Add the following to it:
  35.         ifconfig lo 127.0.0.1
  36.  
  37. 3) save the startup.cmd file.
  38.  
  39. 4) reboot your machine.
  40.  
  41. That's all there is to it...  AdeptXBBS is now ready to fire up...
  42.  
  43. If you haven't used any of the Hagar Builds before, but are upgrading from
  44. 1.08.0x series Adept to a Hagar Build, you should *READ* this document
  45. from top to bottom.
  46. There are drastic changes and the the menus need to be converted to a new
  47. format. (If you have been running Towers 108a series exe's you've already
  48. converted yur menus and there is no need to do it again!!!!!!! However
  49. you do need to delete *.menu.BIN in yur menus dir, adept needs to
  50. recompile a fresh set of binary menu files. Just delete the bin files
  51. and adept will automatically recompile them.
  52.  
  53. If you are currently running 1.08.0x series exe, then u *DO* need to convert your
  54. menus to the new design)
  55.  
  56. Ok there's some confusion about old vs new menu styles so let's take a moment
  57. to explain.
  58.  
  59. if yur menus have entries like this:
  60.  
  61. W,42,Who's On Line,,0
  62.  
  63. then u have the *OLD* menu style and u need to put
  64. menucvt.cmd in yur \adept\menus dir and run it *ONCE*!!! It will convert yur
  65. old style menus to the new format.
  66.  
  67. if yur menu entries look like this:
  68.  
  69. BEGINMENUITEM
  70.   KEY          W
  71.   MENUCOMMAND  42
  72.   DISPLAYCOLOR 0
  73.   MINSEC1      50
  74. ENDMENUITEM
  75.  
  76. then you can just drop the hagar exe's in place and run, your menus are already
  77. in the proper format, no need to convert them again!! *BUT* u need to delete
  78. *.menu.bin so adepr can recompile with the new prompt length, Remember i changed
  79. the length of the prompt to 512 bytes a while back, adept *NEEDS* to recompile
  80. the *.menu files into new *.menu.bin files....
  81.  
  82. Hope the above helps people wanting to try the Hagar WatCom586 builds...
  83.  
  84. ********************** NOTE:**************************************
  85.  
  86. I have had reports of adept not starting up for some people, this is usually
  87. caused by a missing language.text in the \adept\system dir *OR* missing
  88. events.text.x (where x is the node number) files in the \adept\events dir.
  89. You *MUST* have an event file for each node you're starting up, otherwise
  90. results are unpredicatble.....
  91. Note: if u don't want seperate events for each node, just create a
  92. generic Events.Text file, it will be used for all nodes that don't have
  93. a node specfic events.text.x file.
  94. ******************** NOTE2 *****************************************
  95.  
  96. I have also had reports of adept "hanging" in atend.cmd rexx script if it's
  97. a multi-line bbs, what i have found is that it will hang if more than one line
  98. is in use and someone logs off on another line, the culprit seems to be
  99. ADDRESS CMD statements in the atend or a script called by atend, (ADcaller.erx,
  100. called by atend.cmd on some systems has an address cmd staement in it) for some
  101. reason this hangs the rexx script. Don't know why, but it'll do it every time.
  102. Workaround i simply to avoid the use of address cmd staements in *ANY* adeptrexx
  103. script, or you can go back to the warp 3 distribution rexx dll's, they allow
  104. address cmd statements to process normally. IBM changed something in the rexx
  105. and I don't know what it was, but *SOMETHING* definitly changed. Personally
  106. I have modified all my rexx scripts to avoid using address cmd statements
  107. all together. Rexx has built in functions to do most of what i used to use
  108. address cmd for anyway...
  109.  
  110. *******************************************************************
  111. 1.09.18 --- 23-April-97 10:30 EST Update
  112.  
  113.             Ok. I think I have finally found the infamous cirrus logic
  114.             card transparent screen bug, included in this update is a new
  115.             Avi.Dll. This dll should fix that stupid bug once and for all.
  116.             (I hope :> wish I had a cirrus card to test with, but i don't
  117.             so.....)
  118.  
  119. 1.09.18 --- Bluewave import had a prob with some area names if the
  120.             first 5 or so chars were the same, it could post the
  121.             msg in the wrong area, this should be fixed now.(Lemme know Bill)
  122.             Fixed the menutype 53 (Who's in this chat channel) so
  123.             it now displays real names properly too (if u use the real
  124.             name meta in yur language.text that is)
  125.             Added a check to see if the chatserver is running before
  126.             sending the users input out to the channel, if the server
  127.             went down while the guy was typing, he could wind up in never
  128.             never land.. Recompiled the adeptrexx library.
  129.             Made another attempt at fixing the cirrus logic bug, last
  130.             attempt didn't change anything <sigh>.
  131.             Put some code in place so a user who's time has been adjusted
  132.             due to upcoming forced event cannot simply go to the time
  133.             bank and withdraw enough time to overrun the event. It will
  134.             simply tell him he can't have that much and exit..
  135.  
  136. 1.09.17 --- So much for working on soffits and deck :>
  137.             This build is my first attempt to fix the cirrus logic
  138.             and trident display drivers transparent bbs screens.
  139.             I found a problem in the code that could account for
  140.             the display problem. Lemme know if it's fixed. (If u have
  141.             trident or cirrus card that is)
  142.  
  143. 1.09.16 --- Major menudrvr bug,type 4 and 5 commands (goto,gosub with
  144.             password protection) were totally farked. they now work
  145.             as documented.
  146.             Note: those using the language file oout of the full install
  147.             may want to edit line #314 to reflect their own systems name
  148.             instead of mine<G>. Just change DogStar BBs to whatever your
  149.             system is called, this line is displayed on a who's online
  150.             command.
  151.             No more builds for a few days.. gotta fix my soffits and
  152.             repair my deck.
  153.  
  154. 1.09.15 --- What a farking day <sigh>!! Mattis (of course) had another
  155.             bug to report. Seems he has 7000 msgareas defined and adept
  156.             would trap when it hit area 2016. Turns out area 2016's
  157.             name was 53 characters long. Adept uses the name as the
  158.             filename, and of course somebody hardcoded a 64 char
  159.             path/filename limit into just about every source file
  160.             that opens a file. Spent the day tracking down all those
  161.             damn hard coded limits and changing em to 512. Adept
  162.             no longer traps on mattis's msgareas.
  163.             Fixed the more yn= problem where on a remote call, if
  164.             a user was listing message areas and hit = for nonstop, it
  165.             would only show him one more page and stop listing. This
  166.             was not evident in a local login, only for remotes.
  167.             Hitting = now causes adept to scroll the message areas
  168.             as fast as the users modem can handle the data.
  169.  
  170. 1.09.14 --- Mattis reported a bug that I can see being a problem on
  171.             a busy system such as his. If a user enters a message
  172.             or messages, then changes his mind and deletes 1 or two
  173.             of them for whatever reason, we have a problem, the person
  174.             the message was to has already had his personal mail index
  175.             file updated (PMI Index). The bug comes in when that person
  176.             logs on, he's notified of new mail, but the message has been
  177.             deleted. Result, he cannot read any new mail past that deleted
  178.             message, the pmi is farked at that point. So what I did was
  179.             to put in the delete routines a call to update the pmi index
  180.             (removing the deleted message from the pmi file), and I went
  181.             one step further, if the brain dead user who entered the message
  182.             in the first place changes his mind and UNDELTES it, the pmi
  183.             index is again updated. Result deletes/undeletes now properly
  184.             update the pmi index.
  185.             Second, adept was letting people on even if their name was
  186.             in the trashcan file, it was only checking trashcan on new logins,
  187.             it now checks names already in the userbase too..
  188.  
  189.  
  190. 1.09.13 --- Non existant I hate 13 !!
  191.  
  192. 1.09.12 --- Too many updates, time for another minor version increase
  193.             Added one more flag value to the type 51 menucommand,
  194.             flag = 128 will now execute a clear screen before it displays
  195.             the text file. This flag is summable with the others, so you
  196.             can have it clear the screen and prompt to hit enter to continue
  197.             at end of file if you like, so to get more prompting, allow
  198.             interruption of display etc use 151 (128+16+4+2+1).
  199.             Bill-e has reworked the docs, and they are included in the
  200.             archives for this build.
  201.             Note: there is an existing bug in Adept that everybody should
  202.             be aware of, it is in the adept telnet mode. If you select
  203.             telnet active for a port and enable only telnet server, adept
  204.             will trap on the first connection to that port. Workaround
  205.             for now is to enable *BOTH* telnet and socket servers, in
  206.             both the line config and internet options configs. With
  207.             both telnet and socket enabled, all works wonderfully.
  208.             Will see if I can figure why it traps without sockets selected.
  209.  
  210.  
  211. 1.09.11 --- 20-April-97 07:30 Update...
  212.             Fixed a cosmetic logging problem that was showing up if
  213.             a colors.ctl file was not found.
  214.             Built a new cserver.exe that does not generate a chatdebug.log
  215.             file, this logfile could get quite huge if left to grow on a busy
  216.             chat system. I'm including the new cserver in the update zip.
  217.             Also made a change to the code to try and keep adept from
  218.             farking the events files on a trap condition, this happened to
  219.             me a few times, where an events.text.x file was truncated to
  220.             0 len because of a trap or abnormal shutdown condition. This
  221.             change should keep that from happening again.
  222.  
  223. 1.09.11 --- 19-April-97 23:30 Update...
  224.             Ok, Mattis (of Lakebbs fame, telnet to lakebbs.cn-newc.com.au to
  225.             see an excellent 32 node adept system) reports a problem with
  226.             users faking out the dupe user checks on telnet nodes especially
  227.             and using this to gain more than their alloted time for the day
  228.             on the bbs. I have looked at the dupe user check, if the timing
  229.             is just right they can slip thru the crack. Soooo I have added
  230.             a *SECOND* dupe user check right after they enter their password.
  231.             Adept will check, ask for password if they passed the first check
  232.             then if they get past the password it checks once again, if it
  233.             finds the guy on another node, it will hang him up. This should
  234.             take care of that timing window. Mattis, let me know how it's
  235.             working out for you, if it's still an issue, i'll think of
  236.             something else.
  237.             Now a word about who's on line displays, and real names versus
  238.             handles displays. Both the rexx chat who's on line and the regular
  239.             menu type who's on line commands share a common language.text
  240.             line entry. the line in question is #314. If you have a {CF in that line
  241.             then who's on line will display *REAL* names. If you change them to
  242.             {CG then who's on line will display handles. You have your choice,
  243.             currently there is no way to display both short of someone coding
  244.             a rexx script to handle it. (Shouldn't be that hard if someone wants
  245.             to tackle it, both real and handles are available to adept rexx
  246.             and the line number can be incremented to step thru all available
  247.             nodes, soooo, if someone wants to get a bit of adeptrexx excercise
  248.             this would be a good project. ) The way this function is coded in
  249.             adept does not lend itself to an easy way to allow a dynamic display
  250.             of either real or handle. It's simply coded as a choice you have to
  251.             make as Sysop.
  252.  
  253.  
  254. 1.09.11 --- 19-April-97 21:30 Update...
  255.             I'm tired of manually adding {PC's to text files to give users
  256.             a chance to read the displayed file, like lord scores etc. So
  257.             have modified type 51 menu types, if 16 is included in sum of
  258.             optional flags it will now automatically prompt user to hit
  259.             enter to continue at end of displaying text file. See the docs
  260.             for what the rest of the flags values are, they all work as documented
  261.             default is still 7 if no flags value specified on optional data
  262.             line.
  263.  
  264. 1.09.11 --- Sometimes, if you started adept and then immediatly hit
  265.             Shutdown from the pull down menu, adept would start shutting down
  266.             before all the init threads had finished running. Result,
  267.             adept hangs with part of itself in memory, preventing you from
  268.             starting it back up again. Reboot was the only way to clear
  269.             this condition. This sucks and has bit me quite a few times.
  270.             Sooooo, Adept will now post an itnternal semaphore when the
  271.             load msga areas and load file areas threads are complete. I put
  272.             the semaphores in these two threads, cause they are the ones
  273.             who take longest to complete. (It takes 20 seconds to load
  274.             my 1000 msg areas here.) So when you hit shutdown now, the
  275.             shutdown does not go into action till those semaphores are
  276.             set indicating thread completion. So be aware, if you have
  277.             a lot of file/msg areas, and you fire up adept, then immediatly
  278.             hit shutdown, it may seem like forever before it actually
  279.             shutsdown. It's actually waiting for the load msg/file areas
  280.             threads to complete before shutting down. So be patient, let
  281.             it do it's thing, it will eventually shutdown normally. Note this
  282.             has no effect on the close button in upper left corner, I recommend
  283.             not using that button in any case, unless it's an emergency
  284.             situation, like a hung rexx script or some such. Hitting close
  285.             does not save configs and stuff, and in somce cases, depending
  286.             on what adept was doing when you kill it like that, can actually
  287.             corrupt config/events/etc files. Always try to go thru the shutdown
  288.             menu to ensure and orderly shutdown.
  289.  
  290.  
  291. 1.09.10 --- Revisited the events editor, add,delete,insert,and edit all
  292.             work properly. Editing a nodes event file that does not exist
  293.             or is 0 length used to trap Adept, it will no longer trap,
  294.             instead it brings up the add dialog and lets you create an
  295.             events file for that node on the spot, it will save this file
  296.             when u answer yes to the sasve your changes to disk dialog.
  297.  
  298. 1.09.09 --- Due to popular demand, I have taken the automatic execution
  299.             of the ifconfig lo command out of the adept and cserver exe's.
  300.             It was causing problems on some systems apparently, so it's gone.
  301.             It is now up to the sysop to configure the local loopback, (as
  302.             discussed at the very beginning of this document) to configure
  303.             his/her machine's local loopback. Adept *NEEDS* this local
  304.             loopback, as does chat server.
  305.  
  306. 1.09.08 update 9-Apr-78 10:00 EDT
  307.  
  308.             Pulled the local line recent events logging, it was casuing
  309.             problems here, would only show up if you logged on locally a lot
  310.             so it's back to normal, ie local line recent events does not show.
  311.             If you need to know what happened on the local line, look in
  312.             \adept\logfiles\line0.log that's what it's there for.
  313.  
  314. 1.09.08 update 9-Apr-78 07:45
  315.  
  316.             fixed a small bug in the lookatbbs function when it is
  317.             called by right clicking on an active line number from the
  318.             AdeptStatus window...
  319.  
  320. 1.09.08 update 8-Apr-97 14:30
  321.  
  322.             Put in some code to keep bluewave and qwk from trapping adept
  323.             when it can't find an archiver for the uploaded packet. Or if
  324.             there's a problem unarchiving the reply packet. Used to trap
  325.             adept, should not happen now.
  326.  
  327. 1.09.08 --- Addressed several issues with the Qwk - bluewave import/export
  328.             functions. Bluewave import should not produce duplicate
  329.             msgid's on uploaded messages. The from field of bluewave exported
  330.             messages is now truncated at 35 chars as specified in the blue wave
  331.             spec. A space character is now added to begining of blue wave
  332.             exported text, again as per blue wave spec. The qwk/bluewave
  333.             export threads will no longer bomb out on blank to/from fields
  334.             in the messages it is exporting.
  335.             I have one report of the ifconfig commanf that adept (and cserver)
  336.             now generate on startup, the report claims that it messes up the
  337.             tcpip stuff , (symptom of not being able to dcc) I need to know
  338.             if this is true on anybody else's system. i know it's not true
  339.             here, but my system is not complex, would appreciate feed back from
  340.             somebody who is using tcpip network (or anybody to whom it *IS*
  341.             causing a problem). The obvious way to test this is to shutdown
  342.             adept and restart it a dozen times or so, if yur tcpip is not messed
  343.             up after a dozen starts, it's prolly not an issue.
  344.  
  345.  
  346. 1.09.07 update 7-Apr-96 08:45
  347.  
  348.             Fixed the bug in menutype 53 (Show users in chat channel) that
  349.             was causing the display to show wrong names..
  350.  
  351. 1.09.07 update 21:00 EST
  352.  
  353.             Found a potential problem, if after a fresh reboot, you bring
  354.             up Cerver.Exe without having done an ifconfig lo 127.0.0.1 first
  355.             then bring up adept, cserver will start logging giomt traps
  356.             forever, slowly chewing up your hard drive space with a huge
  357.             giomterr.logfile. So included in this build is a cserver.zip
  358.             that contains Cserver.Exe V0.60.05. This build of cserver will
  359.             on startup execute an ifconfig lo 127.0.0.1 to set up the loopback
  360.             it needs to run properly. Both adept and cserver now do this, i left
  361.             it in adept too cause single node systems may want to run without
  362.             loading cserver.exe. In any case your covered, should you reboot
  363.             and load either of these two without having setup the loopback, they'll
  364.             now do it themseleves instead of going south to peoria.
  365.  
  366. 1.09.07 update 16:30 EST
  367.  
  368.             Ok got it right this time, recent events will now log local
  369.             line stuff and no mixing of video when yur logged on local.
  370.             The titles on the windows will now relect Line 0 which is the
  371.             local logon session.
  372.  
  373. 1.09.07 update 13:22 EST
  374.  
  375.             Well that didn't work to well, so i pulled the change, the
  376.             recent events window is back to old behaviour now...
  377.             sorry bout that.
  378.  
  379. 1.09.07 --- Too many updates, so new subversion number.
  380.             By request I have changed the recent events box behaviour
  381.             to display the local login logstuff same as if it was a remote
  382.             login. the title will still say Recent Events: 1 but the info
  383.             will be coming from the local login. When u logoff it will
  384.             revert to line 1 loginfo ( or whatever line u select).
  385.  
  386.             Now I know I've threatened this before <g>, but this time
  387.             I really gotta do it. I'm not gonna mess with the code for
  388.             a minimum of 2 days, we can't get any decenent runtimes
  389.             if everybody is shutting down their adept everday to upgrade.
  390.             I need to know the build is stable before we do anything else,
  391.             and the only way is to let it run and see what happens. Hopefully
  392.             it'll be a nice stable piece of code.
  393.  
  394.  
  395. 1.09.06 update 6-Apr-97 09:30 EST
  396.  
  397.             Ok. I just finished helping a guy out in IRC chat, who was
  398.             having problems logging into adept, it would hang at login,
  399.             sound familiar?? Turns out he had rebooted and forgotten to
  400.             execute the ifconfig lo 127.0.0.1 command before firing up
  401.             adept, well since adept absolutly *NEEDS* that loopback to be
  402.             set, i have hard coded the command into the Adept.Exe. First
  403.             thing it does now is spawn an os/2 window and runs ifconfig lo 127.0.0.1
  404.             It does this *EVERY* single time you start adept, executing
  405.             that command more than once does no harm, and this ensures
  406.             the loopback will be set for adept to use.
  407.  
  408. 1.09.06 update 6-Apr-97 07:45 EST
  409.  
  410.             Fixed a memory overwrite in the events editor..
  411.  
  412. 1.09.06 update 5-Apr-97 07:30 EST
  413.  
  414.             Got a report that trying to edit the *LOCAL* lines
  415.             eventfile (What pervert would think of trying to make an
  416.             events file for line 0 anyway? <Sigh!!>) would trap adept.
  417.             Sure enough it does. Reason is there's no provision for
  418.             having an events file for line 0, it does not even attempt
  419.             to load an events file for line 0. Fixed it so if you try
  420.             to edit line 0 events file, it does nothing. Just dismisses
  421.             the pulldown menu.
  422.  
  423. 1.09.06 --- Ok the events editor is fully functional again, Next,Prev,
  424.             Insert,Delete,Add all work, just a couple things u should be
  425.             aware of. If there's only one event in yur events file your not
  426.             allowed to delete it. The Add button is disabled untill you
  427.             get to the last event in your file, ie u hit next till the Add
  428.             button lights up. Insert works just great, remeber that it
  429.             inserts *BEFORE* the currently displayed event. A quirk, if
  430.             you hit add or insert, you can fill in all the fields, but
  431.             the day of week buttons are grayed out. You can only choose
  432.             everyday, no bigge once u've added or inserted the area, hit
  433.             next or prev then go back to the area u just added, click off
  434.             the everyday selection, and the days of the week buttons will
  435.             light up. I think this has always been there and is probably
  436.             not a result of the work I did on the editor. Anyway, it's
  437.             functional. Note: it makes a backup if you say yes to save
  438.             your changes to disk. Ie events.text.1 will be saved as
  439.             events.bak.1  !!
  440.  
  441. 1.09.05 --- The config->events dialog would crash adept if you hit
  442.             the Prev button or the delete button. Fixed Prev button so it
  443.             works as expected, but I had to disable the delete button, the
  444.             add, adn the insert buttons. The only way (for now anyway) to
  445.             add,insert, or delete an event is to shutdown adept, and directly
  446.             edit the events.text.x files in \adept\events subdir. The
  447.             config->events pulldown menu can be used to look at or change
  448.             existing events.
  449.             These changes will keep adept from trapping on you if you go
  450.             into the events editor.
  451.  
  452. 1.09.04 --- Reading back thru Steven Towers Alpha readme's reminded me that
  453.             he had found a really nasty bug in the 107 series code's Events
  454.             subsystem. This bug could toast Os/2, resulting in traps, Adept
  455.             shutting down for no reason, system hangs, etc. A lot of weird
  456.             behaviour could be attributed to this bug, and it would never
  457.             be the same symptom twice. Soooooo to make a long story short
  458.             I pulled the entire 107f Events Subsystem and replaced it with
  459.             Towers fixed code. The only thing this means to you, the sysop
  460.             that the first time you fire up this build, *ALL* events will be run
  461.             as the Events subsystem gets things in Sync. Once it's finished
  462.             executing all the events, it will be business as usual. This new
  463.             events system does *NOT* use the binary event files (the Event.1
  464.             Event.2 etc) events files, instead it uses the TEXT event files.
  465.             I.e the Events.Text.1 etc files. It will add one new keyword
  466.             to the text files, LASTRAN, this keyword tells the events system
  467.             when the event was last run. You don't have to add it, it will
  468.             be done for you when you first start this build. Events editor
  469.             will now save to the text files instead of the binary files.
  470.  
  471.             I added a History.Doc file to the zips in an attempt to document
  472.             the new features that have been added to these builds. this document
  473.             is not a replacement for AdpXbbs.doc, but is meant as a supplement
  474.             to it. All the new functions/keywords/enhancements have been gathered
  475.             in the History.Doc file.
  476.  
  477. 1.09.03 --- Made it so that when u use the /nostat switch adept fires
  478.             up just as fast as when you don't use that switch, no more
  479.             20 second delay waiting for the system status box to come ready.
  480.             (Since it is never gonna come ready, why wait on it.)
  481.  
  482. 1.09.02 Exe UpDate 2-Apr-97 16:30 EST
  483.  
  484.                Added a new command line switch, (Just for WIKK) if
  485.                start adept with adept /nodes x /nostat it will fire
  486.                up *WITHOUT* the adept status screen, looking like pre 1.07
  487.                days before they added that status screen. Note it takes a little
  488.                longer to come up but it does come up, have patience..
  489.  
  490. 1.09.02 Exe Update 2-Apr-97 07:30 EST
  491.                Found and fixed a bug in the menu compiler, there were
  492.                occasions where a menu (the text file) would become
  493.                corrupted or overwritten. Fixed now..
  494.  
  495. 1.09.02 ---    Added 4 new menu commands, menu commands 119 and 120.
  496.                These work as the description for menu types 25 and 26.
  497.                Except, that these two will only act on *TAGGED* message
  498.                areas. The offline mail tags are what is inspected by them
  499.                when showing u the next area. So it is now possible for
  500.                your users to tag a bunch of msg areas, and using type
  501.                119 or 120 do a read of tagged areas. It tells the user
  502.                number of messages in the area, his last message read, then
  503.                the user has the option of reading the area, skipping it
  504.                setting direction etc.. just like types 25 and 26.
  505.  
  506.                Menu Commands 121 and 122, these two will do a quick(121)
  507.                or detailed(122) scan of tagged message areas. Again the
  508.                user has the choice of doing the scan on the area presented
  509.                or skipping it. If he chooses R)ead he will read the message
  510.                headers. just like menu choices 16 and 17, but for all tagged
  511.                message areas instead of just the current area.
  512.  
  513.                Give your users the option to tag message areas from yur
  514.                msgs menu by using either (or both) menu types 50 or 702.
  515.                The beauty of this scheme, is that the user can permanently
  516.                set tags that will be rememebred across logins, but at
  517.                any given login can (for that session only if he chooses) tag
  518.                a bunch of areas he doesn't want to be permanently tagged.
  519.                Unless the user saves his tags they will be lost at the next logon.
  520.  
  521.                Note: If u have 5000 message areas and u tag area 1 and 5000,
  522.                and invoke one of these menu types, there's gonna be a noticeable
  523.                delay between the time u read the last message in area 1 and the
  524.                time area 5000 is presented to you for action. It takes *TIME*
  525.                to scan 5000 message areas looking for the area tagged bit.
  526.  
  527. 1.09.01 ---    Removed some debug printf's that were still in my color
  528.                loading routines. Went thru and cleaned up the compile
  529.                time warning messages that actually meant there was something
  530.                amiss with the code. Recompiled Rexx and Adept from
  531.                scratch. A full fresh compile.
  532.  
  533. 1.09.00 Exe UpDate 31-Mar-97 21:33 EST
  534.  
  535.         --     Fixed a small glitch in the system status window, the
  536.                boot time was displaying current time instead of the
  537.                system boot time, now it displays date and time
  538.                os/2 was booted at correctly.
  539.  
  540. 1.09.00 Exe Update 31-Mar-97 09:30
  541.  
  542.          --    Alt suggested a reply to any message as E-Mail reply, good
  543.                idea, this function now works, the tilde key invokes the
  544.                reply as e-mail option from the message reader menu. You
  545.                can reply to a message in *ANY* area as e-mail and not lose
  546.                your place in the area you are reading. Change line 901
  547.                of language.text so it looks like this now"
  548.  
  549. #901  (Next Page, Prev Page, Over, Abort, Reply, Forward-thread, Backward-thread, Quit-thread, Kill, Move, Copy, Locate, LocateNext, LocatePrevious, #Msg, Description, rUles, =Again, Scan, Without stopping, !Toggle Ctrl-A, LocateUser)
  550. [Str]NPOAR][.KMCL/\#DU=SW@! X*~:        <---- Note the tilde key right after
  551.                                               the *.
  552.  
  553. 1.09.00  --    This build removes the alpha (or Beta) designations from
  554.                my builds, I think they've proved themselves stable enough
  555.                to be called releases, don't you ??
  556.                New fetaure, couple guys were asking bout the possibility of
  557.                of replying to echomail with a netmail, well it's done, and it
  558.                works. I've tested it here works like a champ. To enable this
  559.                little feature (yeah little after it works <G>) you need to edit
  560.                line #901 in your language.text file. Make it look like this:
  561.  
  562. #901  (Next Page, Prev Page, Over, Abort, Reply, Forward-thread, Backward-thread, Quit-thread, Kill, Move, Copy, Locate, LocateNext, LocatePrevious, #Msg, Description, rUles, =Again, Scan, Without stopping, !Toggle Ctrl-A, LocateUser)
  563. [Str]NPOAR][.KMCL/\#DU=SW@! X*:
  564.  
  565.                Note the added * character before the : it used to read X:
  566.                change it to X*: the * key will activate the reply as netmail
  567.                option when yu are reading any echomail message. Hell make that
  568.                *ANY* message, if you want to reply to a local base with netmail
  569.                well you can do so, didn't feel it was worth the added effort
  570.                to filter out the local bases. Note that all security options
  571.                and flags still apply here. If you don't have the flags or
  572.                security level to post in yur netmail area you won't be able to
  573.                enter the message. Oh and it doesn't matter what you call
  574.                your netmail area, i scan for the NETMAIL flag (you should
  575.                have it checked in your message areas setup already right?
  576.                Right!)
  577.  
  578.  
  579. --- aH20 --    30/3/97 11:00 EST Exe UpDate
  580.                Ok, people have been bitching cause adept adjusts a users
  581.                time on *ANY* upcoming event, well as of today, adept will
  582.                only adjust users time if the upcoming event is *FORCED*,
  583.                ie the Forced flag is set for the upcoming event.
  584.                Note: If yur gonna do any experimenting with this, be *SURE*
  585.                you don't try to test it from a local login, since Line 0
  586.                (Local login line) has no events file, it skips the calculation
  587.                of time to next event. Either call in or telnet in since all
  588.                remote lines *MUST* have an events file. If yur running without
  589.                an events file for a particular node your asking for trouble.
  590.                It may run, but yur gonna get all kinds of strange happenings.
  591.                If a node is active, it *MUST* have a corresponding Events.Text.X
  592.                file where X = The node number that file corresponds to.
  593.  
  594.  
  595.  
  596. --- aH20 --    Dropped squish support entirely, Squish is 4-d Adept
  597.                is 5-d. The two just don't mesh, too many kludges required
  598.                to work around squish's limitations. Why should I have to
  599.                break Adept to get it to work with Squish. Makes no sense
  600.                to me.
  601.                Same goes for *.msg for netmail area, why should i kludge
  602.                a perfectly good 5-d aware program to *try* and get it to
  603.                run with a 3-d aware message style. Again makes no sense
  604.                to me.
  605.                Onwards.. made a change to the files download routines to
  606.                try and fix this intermittent DosCall1.Dll traps that I and
  607.                others have experienced when a user tagged a lot of files
  608.                for download. Hopefully this is fixed now.
  609.  
  610. 29/3/97 15:45 EST Update... Reworked the control info calculation for the
  611.                  squish message base stuff. (I learned a bit more about
  612.                  squish and realized I was doing it wrong.) The testing
  613.                  I have been able to do here indicates success. This squish
  614.                  support is still considered *ALPHA* ware, use with caution.
  615.                  I.e. I wouldn't rush out and convert all my bases to squish
  616.                  without running some tests first.
  617.  
  618. --- aH19 --   Ok here we go, this build has adept reading/writing
  619.               Squish message bases, this support is in there in a limited way.
  620.               By limited i mean:
  621.  
  622.               1> NetMail, Internet E-mail, and Usenet message areas cannot
  623.                  be made into squish bases. These type message areas are
  624.                  gonna have to remain Adept style message bases.
  625.  
  626.               2> Adept will only read/write *EXISTING* squish message
  627.                  bases at this point in time. (This may change if I get the
  628.                  ambition up to have adept create an empty squish base, gotta
  629.                  learn more about the squish structure first.) So if your
  630.                  gonna make an area a squish message base you will need something
  631.                  to create the message base files for you, i understand there
  632.                  are external editors out there that will  do this, heck even
  633.                  the squish tosser can do it for you if your tossing echomail
  634.                  with it anyway, just be sure you don't try to write a message
  635.                  from adept into a squish message base that has not been
  636.                  initialized yet. Once the base has been initialized adept
  637.                  has no problems read/writing to it, I even made it so bluewave
  638.                  and qwk imports will post properly into a squish base.
  639.  
  640.               3> To turn an area into a squish area, you will have to edit
  641.                  your message_areas file in \adept\system dir and set the area
  642.                  flags to 32768, do *NOT* set the EchoMail flag, this will result
  643.                  in adept not writing to the squish base, squish bases are
  644.                  echomail by default in adept. (See restriction 1 above).
  645.  
  646.               4> If your gonna use squish bases for echomail it's assumed
  647.                  you know how to setup and run squish (the tosser/scanner)
  648.                  program. *DON'T* ask me about it, I've never ever used
  649.                  squish bases in my life. Of course it goes without saying
  650.                  Gatekpr does not now and may never support squish bases. (Why
  651.                  should it, you wanted to run squish didn't you?)
  652.  
  653.               5> Depending on available time, i may or may not get around to
  654.                  making adept capable of creating a squish base from scratch.
  655.                  But that's a ways down the road.
  656.  
  657.               6> Oh almost forgot, you'll need the squish dll's in yur libpath
  658.                  somewhere for all this to work, I included them in the
  659.                  zip file, i put mine in the same place as my adept dll's
  660.                  and things seem to work fine in the limited testing I've been
  661.                  able to do.
  662.  
  663.               7> Last but not least, this stuff is largley *UNTESTED* so use
  664.                  at own risk applies. It reads and writes from adepts read/write
  665.                  menu commands, I have no way of knowing how squishp.exe is gonna
  666.                  react to finding a domain in the control info, it may puke all
  667.                  over the place. As far as I know (correct me if I'm wrong)
  668.                  squish is *NOT* domain aware..
  669.  
  670.  
  671. --- aH18 --   Revisited the colors stuff, changed the method of
  672.               obtaining the nearest possible RGB background color for
  673.               any given color depth. Hopefully this is the end of
  674.               it.
  675.  
  676. 27/3/97 11:30AMEST - Kay it looks like colors are solid now, all I did in this
  677.               update is to fix a small problem with the {M2 meta variable,it
  678.               was displaying one more than it should have.. Fixed now.
  679.  
  680. 27/3/97 20:30EST - Thanks to Donovan for pointing out the status screen was
  681.              just a Tad cluttered, and for coming up with a layout that looks
  682.              much nicer, easy fix once you know how you want it to look, and
  683.              Dono had a definite suggestion as to how it should look, soooo
  684.              presto, chango, Done.
  685.  
  686. --- aH17 --   A purely experimental build, I turned on *ALL* optimization
  687.               options in the watcom compiler. You may want to wait till
  688.               reports come in on wether this build is as stable as the
  689.               regular builds before you install it, however i need
  690.               *somebody* besides me to run it <g>.
  691.  
  692. 25/3/97 10:45EST Ok, still getting a glitch with s3 and cirrus cards as far
  693.               as color settings go, this is an attempt to fix that. BTW the
  694.               fully optimized version ran here for over 24 hrs, looking good.
  695.  
  696. 25/3/97 12:00EST Sigh!!! Once more around the park please, another attempt
  697.               to fix colors for some video cards that are having a hard
  698.               time setting the backgroundcolors...
  699.  
  700. --- aH16 --   Ok, cleaned up the rest of the colors display bugs, should now
  701.               work properly on anybody's system. I decided to leave the main
  702.               frame as a Gray background rather than making it configurable
  703.               too... Put the msgarea loading code back the way it was,
  704.               mainly cause I got a trap when a user connected this afternoon
  705.               and it's the only code I touched in the mailer/bbs, rest of work
  706.               was all done in display subsystem. If u get *ANY* traps at all
  707.               record the trap information so i can try and figure out what
  708.               was going on when it trapped. the numbers i'm interested in are
  709.               the last set ie they lool like this:
  710.               Adept.Exe 0002:00019ef9   if it doesn't say adept.exe then it's
  711.               of no use to me, i only have source for the exe not the dll's.
  712.  
  713. 23/3/97 09:00 EST Update... The Adept Status window was displaying funky
  714.               colors when u switched to it, this should fix it. BK lemme
  715.               know if it does the trick for you...
  716.  
  717. 23/3/97 10:00 EST Update... Minor glitch in Status:1 Box reported by Taz,
  718.               this update should cure that...
  719.  
  720.  
  721. --- aH15 --   On my system Adept sometimes traps at startup, usually in the
  722.               loading msgareas code. The loadmsgareas was being started as a
  723.               seperate thread, and was sometimes still doing it's things
  724.               when adept was ready to initialize things, i have changed it
  725.               so it's no longer a seperate thread, it should now wait till
  726.               all msgareas are loaded before the init code runs. You may see
  727.               a slightly longer startup time (I.e you won't see the waiting
  728.               for call status till the msgareas are all loaded) than before
  729.               but i believe it's worth the extra few seconds in exchange for
  730.               a more reliable startup sequence.
  731.               In the archive is another sample color.ctl file, named multi-color.ctl
  732.               just rename it colors.ctl and adept will  use those colors for
  733.               it's screens, this layout is what Wikk likes on his system<g>.
  734. 22/3/97 16:30 Ok I think i've nailed the clors bug, at least it works in
  735.               1024x768x64k and 800x600x16mill here, should work on *ANY*
  736.               resolution now. give it a whirl and lemme know, I'm late for
  737.               Dinner...
  738.  
  739.  
  740. --- aH14 --   I don't like the number 13 <g>..
  741.               This build heralds Adepts coming into the color age, included
  742.               in this zip is a file called colors.ctl, simply place this file
  743.               in your \adept\system dir, edit the values to your liking, then
  744.               fire up adept. The screens will come up with fore/back ground
  745.               color combinations *YOU* selected. So if you like Lora's colors
  746.               fer instance you can set adept up to look like it. The screens
  747.               are all individually controlled as you can see in the colors.ctl
  748.               file, so be creative, choose color combos that look good to *YOU*.
  749.               NOTE: if the colors.ctl doesn't exist, Adept will still come up,
  750.               but it will come up with a set of default colors *I* picked.
  751.               If u wnat the old standard GRAY screens, simply set all background
  752.               to 204 and all foreground colors to 0, that'll give u black
  753.               text on gray background...
  754.  
  755.  
  756. 19/3/97 19:00EST Update - I just realized, i left test code in there, all windows
  757.               will take on colors of LOGBOX, sorry folks, they now respect
  758.               the settings you set for the other windows...
  759.  
  760. 20/3/97 08:00EST UpDate Fixed a cosmetic problem with The status box, it wasn't
  761.               always being updated with the right background color, now it
  762.               is...
  763.  
  764. 21/3/97 14:00EST Update, some people are reporting funky background colors
  765.                  this is an attempt to fix that... I'll need feedback cause it
  766.                  does not happen here, I suspect that only really fast machines
  767.                  like p166's were having the problem... and Cirrus Cards
  768.                  continue to be a bitch, dunno what I can do about that.
  769. 21/3/97 15:30EST Update, due to popular demand the close button has been
  770.                  renenabled, and if colors.ctl does *NOT* exist adept
  771.                  tries to default to black text on gray background..
  772.  
  773. --- aH12 --   This builds made special for _Dutch_, all I'm gonna say is
  774.               Click your Right Mouse Button on any Line# in the Adept Status
  775.               Window, (The one that displays system uptime and all that).
  776.  
  777.  3-16-97 07:45EST - Did some more work on the adeptrawcom functions, cause
  778.               telnet.cmd caused adept to trap again last night, found a
  779.               problem where one of the functions was not setting the return
  780.               code at all, fixed that and recompiled the rexx lib, we'll see
  781.               what happens now...
  782.  3-16-97 09:00EST - Changed the number of chars displayed by {A8,{A9,{AA from
  783.               20 to 40 , this was a request to allow usenet address to display
  784.               better... Note, that to get a 40 char display u have to change
  785.               line # 361 in Language.Text from 30.30 to 45.45 or u will only
  786.               display 30 chars in the From field..
  787.  3-16-97 15:00EST - Noticed that if selected bbs window from the status screen
  788.               right mouse button popup, then minimized it, then went to adepts
  789.               main status screen and tried to call up the bbs window from there
  790.               it would not (cause the focus was no longer on that line #) so
  791.               I added some code to restore focus to line it was originally on.
  792.               Not a big deal but people might have wondered why it would not
  793.               call up the bbs window sometimes...anyhooooo fixed!.
  794.  3-17-97 06:30EST - Changed the display of {A8 etc back to what it was, the
  795.               system uses these meta's all over the place, and it was messing
  796.               up the nicely layed out displays, for quick/detailed/pmi etc
  797.               functions.
  798.  
  799.  
  800. --- aH11 --   Added the FTPName field to the pm file editor, it works the same
  801.               way as the other fields, i.e. u need to hit save after making a
  802.               change to an area, or the change won't be written to disk...
  803.  
  804.               Cut the exe size down to a shade over 600k =)
  805.  
  806.               Well I ran the adept ftpd for a day or so, seems to work with
  807.               a few quirks, 1> it doesn't know what to do with ACCT commands,
  808.               so ftppm.exe in os/2 barfs, won't connect to adeptftpd, 2> neologic
  809.               ftpd won't send the filename to get to adeptftpd fro some reason
  810.               if autodetect (the default) is used... os/2's command line ftp
  811.               works fine with it, others may or may not. The bulk of the ftp
  812.               engine is in a dll to which we don't have source code, so there's
  813.               not likely to be any more improvements to this part of adept.
  814.               I'm back to running neologic's ftpd on my site, simply cause
  815.               ftppm, neologic ftp clients etc can connect and transfer with
  816.               no hassle..
  817.  
  818. --- aH10 --   Fixed the ftp server so it doesn't trap adept anymore when
  819.               the remote transmits a PWD request as the *FIRST* command
  820.               after logging on, this was causing a trap cause file area
  821.               information had not been loaded yet, so now it will automatically
  822.               place the user in file area 1 on the first pwd command, subsequent
  823.               pwd commands will work as expected. Everything seems to work
  824.               fine, but bear in mind the server uses the adept file system, so
  825.               if you have files in accesible areas that have not been imported
  826.               into adepts filebase, the ftpd won't see them... The ftpd will
  827.               respect security levels and flags on a per area basis, same operation
  828.               as the regular filebase menu commands..
  829.               To have anonymous ftp available, log in as anonymous, use any
  830.               password for now, then logoff. Now go into useredit and set the flags,
  831.               security, and other things you want this anonymous user to have, (I set
  832.               mine to new user status, which means if someone actually logs onto the
  833.               bbs with this name, they can't do squat.) and finally edit the password,
  834.               when the password entry screen comes up simply hit tab once, then hit enter,
  835.               it should ask u if u really want to set password to zero length, say yes.
  836.               and save the user record. People can now log into your ftpd with the
  837.               username anonymous and anything at all for a password. (Something *MUST* be
  838.               entered, simply hitting enter won't let them in) You now have anonymous
  839.               ftp set up for your adeptxbbs.
  840.               To enable the ftpd simply start adept like this: adept /nodes x /ftp where
  841.               x is the number of nodes u wanna start and /ftp tells adept to start the ftpd.
  842.               That's it, if you wanna see it from a users point of view ftp to
  843.               206.248.78.1 I'm running it here...
  844.               One last thing, you need to manually add the FTNAME areaname to
  845.               yur existing files_area file, the pm editor doesn't do FTPNAME yet
  846.               and in fact will wipe it out if it exists, so just use a text editor
  847.               on File_Areas and yu'll be all set...
  848.               19:20 update fixed a memory overwrite in sysystat thanks to betels
  849.               sharp eyes fro finding this one, am putting lots of info in
  850.               that adept status window and i forgot to increase the buffer
  851.               size accordingly... fixed now..
  852.  
  853.  
  854. --- aH9 ---   Made a change to the RawCom functions adept rexx routines,
  855.               in an attempt to stop telnet.cmd from trapping adept if a user
  856.               hangs up at a critical point in the script, it's a rare timing
  857.               problem but it happens at least once a week on my system, so
  858.               hopefully this will cure it. And since I rebuilt the rexx
  859.               lib, rather than just relinking, i decided to recompile the
  860.               whole shebang from scratch...
  861.               Also Chris and I exchanged Code Diff's last night, Have added all
  862.               his PM cleanup code to my code, we should be at the same level
  863.               of fix/enhancements with this code exchange... cept for the few
  864.               things that are unique to the code streams, ie menuengine stuff
  865.               and mailer stuff...
  866.  
  867. --- aH8 ---   Found some more vestiges of towers attempt at a new file i/o
  868.               system for adept. Removed all that stuff and recompiled...
  869.               found that if a user dropped carrier at logon prompt, files
  870.               were not being closed properly, even the mainmenu.ans
  871.               file could remain open...it now closes any open files..
  872.  
  873.  
  874. --- aH7 ---   Ok, did the same as Betel, Shutdown menu is disabled till
  875.               adept has started the outbound window, this should prevent
  876.               shutting down being initiated during startup, it used to happen
  877.               that if the threads had not all completed initialization and
  878.               you hit the shutdown button, adept would get confused, leaving
  879.               a portion of it's self in memory, effectivly preventing you
  880.               from starting adept up again. You used to have to reboot to
  881.               clear this state..
  882.               Betels, Bluewave import change of not checking for carrier drop
  883.               during import was already in this code, so no worries there.
  884.               What else.. oh yeah, the outbound box cannot be closed, it will
  885.               simply minimize if u try to close it. That's about it...
  886.               Changed the default background colors to pure white
  887.               background, this one outta display properly even on a
  888.               16 color system.. (I *HATE* Gray <g>>)
  889.  
  890. 19:30 Update..DUH!!! Plugged a hole in the time to next event calculations,
  891.               seems if a user used all his time and called right back, the calc
  892.               would go negative, fail the if and give him time to next event
  893.               letting him back on, now it logs him off if he's used all his
  894.               time for the day... sorry bout that folks..
  895.  
  896. --- aH6 ---   I've been playing with PM stuff, this build is an attempt to
  897.               get adept to respect System Background colors, the windows
  898.               should take on the colors of the system background,  (That you
  899.               set in scheme or color setup or wherever it's set.) the dialog
  900.               boxes will still take on color of the system dialog colors
  901.               which default to pale-Gray.. On my system the background color
  902.               is set to red=0,blue=255,green=255, I kinda like it.. lemme know
  903.               how this goes over.. (I was so *SICK* of that pale-gray background
  904.               adept defaults to)...
  905.               However... not everyone has true color and adept was pulling up
  906.               a lot of funky color combinations, so it's back to  that pale
  907.               gray stuff (I *HATE* gray<g>)...looked real nice on my system
  908.               though..oh well..
  909.  
  910.  
  911. --- aH5 ---   Put in Wikk's Fax fix to class 2 faxmodems, if the settings
  912.               are wrong blame him<g> I don't have a class2 faxmodem here, he
  913.               does...sooooooooo.....
  914.               Recompiled to get an up to date map, I inadvertently misplaced
  915.               the map from the last build, made a few changess to the
  916.               file i/o code... nothing big, the relogin menu option, menu type
  917.               1002 relogin should now work (I haven't tested this so ... )
  918.               and here is towers original story on how it's supposed to work.
  919.  
  920.               Added a new menu type, 1002.  Logoff and Relog on.
  921.               This will display prompt #935 (currently unused) and display the
  922.               file Relogin.Asc/Ans/Avt to the user before commencing with the
  923.               relogin.  This is a COMPLETE logoff with relogin, except that it
  924.               doesn't drop carrier.  ATEND.CMD will be run, etc.  I have added
  925.               two new rexx function functions.
  926.  
  927.               AdeptSetRelogin(line, TRUE/FALSE) - Tells the BBS to relog the user back
  928.                                     on after logoff is completed.
  929.  
  930.               AdeptCheckForRelogin(line) - Will return 1 if the user is requesting a
  931.                              relogin after logoff.
  932.  
  933.               So there you have it, as I said the code is in there but I haven't
  934.               personally tested it yet... I thought I'd enable it in case
  935.               someone out there has a need  for this function.
  936.  
  937. --- aH4 ---   WatCom586 Build by Hagar...
  938.               realized i was still using the 107f rexx library, this may have
  939.               been responsible for some weird stuff I was seeing on my system
  940.               so I have replaced the rexx library with towers code, to keep
  941.               everything in sync. Rebuilt the library and did a full recompile
  942.               of adeptx.
  943.               Moved users age calculations back to where they were, think moving
  944.               them up introduced a nasty bug, anyway users age is not available
  945.               in the time adjusted screen cause it hasn't been calculated yet, it
  946.               will always show as 0...
  947.  
  948. --- aH3 ---   WatCom586 Build by Hagar...
  949.               Told ya I couldn't keep my hands off it<g>...
  950.               Ok, I have added the ability to use custom login.asc/ans files
  951.               on a per node basis, the bbs now looks for loginx.asc/ans where
  952.               x is the node number, so you can have a login1.asc/ans login2.asc/ans
  953.               etc..(Note if yur going to use this method, the .asc *MUST* exist or
  954.               the search will fail.) if it can't find a loginx.asc file, it will
  955.               default to the old behaviour of displaying the plain login.asc/ans.
  956.               This gives you great flexibilty and control over  your login displays
  957.               for each node.
  958.               Of course I have also added the ability to display a custom
  959.               WelComex.Asc/Ans screen, again on a per node basis, if welcomex.asc
  960.               for that node doesn't exist, it will try to display welcome.asc/ans,
  961.               and if that doesn't exist it won't display a welcome message at all.
  962.               Note: these linex.asc/welcomex.asc files must be in the text dir
  963.               just the way the old files were in the text dir.
  964.               Later.... fixed a problem with the timeadjusted.asc/ans/avt/rip file
  965.               it wasn't showing the {V3 (users age) correctly, this was due to
  966.               the fact  that age had not been calculated till after the file was
  967.               displayed, moved the age calcs up before the file display and all
  968.               is well...
  969.               OK i added a small check to see if address is locked before trying
  970.               to send anything for a node who calls in while gatekpr is tossing
  971.               mail. Before it would send the archive (even if gatekpr had not
  972.               finished yet) now it should wait till gatekpr is done before
  973.               releasing the archive to the polling node...
  974.  
  975.  
  976. --- aH2 ---   WatCom586 Build by Hagar The Horrible
  977.               determined that the add files to the edit download list function
  978.               is blamemless for the trap report i got so i put it back in...
  979.               added a carrier check in qwk  and bluewave import routines, was getting
  980.               reports of traps if a user logged off too fast..lets see what this does..
  981.               DOH!!!! Fixed my calculation to next event, was always giving user
  982.               all the time to next event.It works properly now. (Hey I never was
  983.               any good at Math<g>)
  984.               ...Later in the afternoon, double DOH!!! I just realized, line 0
  985.               *DOESN'T* have an events file, no wonder my testing was coming
  986.               up with weird shit... and I was only calculating time to next
  987.               event of the *LAST* line that started.. i.e in my case, node 8's
  988.               event file was being used. Added code to skip time to next event
  989.               calculations if line is local logon, and added code to ensure
  990.               that the events file of the node the user was logging into is
  991.               being used. DOH!!!
  992.  
  993. --- aH1 ---   WatCom586 Build by Hagar The Horrible  (Hence the H1 :>)
  994.               all future builds will end in H? where ? is the build number...
  995.               At long last adept will now respect events. It will check the users
  996.               remaining time allowed in the bbs for this logon, compare it to
  997.               the active events end time for  this node (It is assumed that the next
  998.               event starts immediatly after the current one ends, valid assumption I think
  999.               since you should not have holes in yur event schedules anyway for proper
  1000.               operation of the mailer) and if the users time is greater than time to next
  1001.               event, his time will be adjusted accordingly. If  an adjustment is made to
  1002.               the users time he will be shown (if it exists in the text dir) the file
  1003.               timeadjusted.asc/ans/avt/rip. You create this file and make it read
  1004.               anything you like. Meta's are valid in this file just like all other
  1005.               text files, so u can show the user his adjusted time if u like, or simply
  1006.               inform him his time has been adjusted.. it's up to you.
  1007.               I have included a timeadjusted.asc/ans file in this archive as a sample
  1008.               of what u can do with it. Not fancy but it meets my needs for my bbs, do
  1009.               with it what you will. =)
  1010.  
  1011.  
  1012. --- a50 --- Watcom586 build by Hagar
  1013.             Ok so I can't keep my hands off it =)
  1014.             fixed a bug in the intenet e-mail posting routines, if u had allow
  1015.             anonymous messages turned on it would ask the question, but always
  1016.             used the users handle in the post. Now if u say no to enter message
  1017.             anonymously, it posts it with your real name.
  1018.             Also all areas it now checks fro use rewal name flag and if it's
  1019.             checked it uses real name, if real name is not checked it checks the
  1020.             anonymous flag and  if it's set it uses the handle, if both real name
  1021.             and anonymous are not checked it will offer the user the choice.
  1022.             Betel and i are now shipping the same set of dll's once again, if
  1023.             in doubt use the set in this archive, they're the ones I linked with.
  1024.  
  1025.  
  1026. --- a49 --- WatCom 586 build by Hagar
  1027.  
  1028.             Have received several reports of giomt.dll trapping at various times
  1029.             so in an effort to cure these traps, i have regressed to the vac4
  1030.             giomt.dll. It is included in this archive, rest of the dll's have not
  1031.             changed but i include them just to be complete. Be sure to use these
  1032.             dll's for running a49. The exe was linked with this specific set so
  1033.             it only makes sense to use them at runtime...
  1034.             Changed the default icon to hagar, will make it easier to identify
  1035.             my builds from any others out there..
  1036.             Whoooohoooooo!! added system boot time to the adept status screen..
  1037.             it now shows system boot time, system uptime, adept online time, and
  1038.             current time of day...!!
  1039.             Made a change to the user editor to allow up to year 3000 stead of the
  1040.             year 2000 limit that was there previously... hopefully this will not break
  1041.             anything else, but *BACK UP YUR USERS FILE* just to be safe....
  1042.             Pulled my (A)dd files to list code from the edit tagged files item,
  1043.             the way i Had it had potential to trap adept... will re-examine this
  1044.             and try to come up with something else..but for now it's back the way
  1045.             it was...
  1046.             Whooooohoooooo, now u can see at a glance what version yur running,
  1047.             simply  by looking at the adeptstatus screen, version number is now
  1048.             displayed as first line. (Had to give you *SOME* way of keeping up
  1049.             with the rapid fire releases as of late. <g>)
  1050.             Ok. I'm gonna lay off releasing anything else for a while, wanna make
  1051.             darn sure I've got a stable bbs (A49 uptime 6hrs so far) system here.
  1052.             So unless someone reports a serious bug, this will be the last exe for
  1053.             a few days at least. Thanks to all who have helped test the "Hagar"
  1054.             builds over the past few weeks. Your input is invaluable. Keep up the
  1055.             great work folks.
  1056.  
  1057.  
  1058. --- a48 --- WatCom 586 build by Hagar
  1059.  
  1060.             Extended the menu PROMPT field from 128 chars to 512 chars, this should
  1061.             be enough for anybody, if u have a menu prompt that is longer than 512
  1062.             chars u need serious help <G>... and it will cut it off at 512 chars.
  1063.  
  1064.             NOTE: YOU MUST DELETE *.BIN in your \adept\menus dir and let adept
  1065.             recreate them, if you don't do this Adept will trap soons it tries to
  1066.             load the main menu!!!!!!!!!!!!! (Natch the old .bins don't have the same
  1067.             bytecount as the new .bins will have)
  1068.  
  1069.             Thanks to safehex for some system uptime code, we now have a system
  1070.             started at and system uptime on the adeptxbbs status screen, looks
  1071.             KEWL!! Thanks Safehex, I count u as one who "Sent Code" in the true
  1072.             binkley spirit... (Only our stuff is better than bink <g>)...
  1073.             Fixed add to download list from the edit tagged files prompt, it will
  1074.             now prompt you for a file name, whn yur finshed entering filenames
  1075.             it will enter the download dialouge....
  1076.  
  1077.  
  1078. --- a47 --- WatCom  586 build by Hagar
  1079.             lesse, first, fixed a bug in the /noinit, if u tried an
  1080.             adept /nodes 1 /noinit 1, adept woult trap...fixed.. it now works
  1081.             as does /setup...
  1082.             Fixed the broken adept native telnet sessions, ie
  1083.             telnet polls now work if u want to use them instead of using
  1084.             vmodem for your telnet stuff. I tested it here and even pulled in
  1085.             two 100k mail packets from dutch, no problems...
  1086.             Note: there is a potential problem, where if u start adept and then
  1087.             immediatly hit shutdown from the pulldown menu, adept gets confused
  1088.             and stuff remains in memory, if u then try to restart adept, you get
  1089.             an error messge and adept won't start. Only way i've found to clear
  1090.             this condition is to do a reboot. This seems to occur because of the
  1091.             load message areas thread not having completed before u told adept to
  1092.             shutdown, it's very prevalent here with 1000 msg areas it has to load.
  1093.             Moral of the story, is don't tell adept to shutdown before all the
  1094.             startup threads have completed. It can take as long as minute and a half
  1095.             to get evrything initilaized to a know state, prolly longer if u have a massive
  1096.             files and msg areas section. Give it time to complete, then shut it down
  1097.             things will work ok then...
  1098.  
  1099.  
  1100.  
  1101. --- a46 --- WatCom 586 build by Hagar
  1102.             I screwed up, when i dropped towers mailer back in I forgot to
  1103.             drop in some essentgial support files as well. This caused erratic
  1104.             behaviour in the mailer. I.e adept would not send files to another
  1105.             system, it would report sending files, done, without actually
  1106.             transferring anything.
  1107.             Reworked the file tagging stuff, it should now only tag the first
  1108.             occurence of a file. (Note that if u try to tag 4 or 5 files at once
  1109.             and it finds a dupe on the second file it will stop tagging without
  1110.             tagging the rest of them. If it finds no dupes, it will tag all the
  1111.             files u requested to be tagged). I tested this here with a dupe filename
  1112.             and it worked as advertised soooo.....lemme know how it works for you.
  1113.  
  1114. --- a45 --- WatCom 586 build by Hagar
  1115.             did some more work on the files tagging scheme, it should now only
  1116.             tag the first  file it finds by that name (hopefully it's the one
  1117.             in the current area) and on download option will put *EVERY* file
  1118.             that matches into the download list (which is editable by the user
  1119.             before he downloads).. Taz i need you to test  this for me again,
  1120.             I haven't been able to get duplicate filenames into my files system.
  1121.  
  1122.  
  1123. --- a44 --- WatCom 586 build by Hagar
  1124.             Added a bit of logic to honor autologoff requests on Offline mail
  1125.             downloads, if user requests autologoff the lmrs are automatically
  1126.             updated and the system starts logoff counter...
  1127.             Fixed a security hole I had created in offline mail, ie. area 1 was
  1128.             unprotected and could be downloaded by anybody, it now honors same
  1129.             checks as the rest of the areas...
  1130.  
  1131. --- a43 --- WatCom 586 build by Hagar
  1132.             Added some code to ensure unique msgid's in bluewave imports...
  1133.             Added some code to prevent files with the same name from being tagged
  1134.             for download, i.e if u have a bunch of files called 00index.txt only
  1135.             the first one will be tagged, i haven't been able to test this here
  1136.             cause I only have unique filenames in my filesbase, anybody that has
  1137.             dupes  in different areas, I would apprciate a feedback on wether this
  1138.             works or not... TAZ ?? U were asking, can u test it ??
  1139.             Fixed a problem with reading asc/ans files, ie if {PC was the last
  1140.             thing on the line, the C was not being read in. It workks properly
  1141.             now. Safehex this one's for you. :>
  1142.  
  1143.  
  1144. --- a42 --- WatCom 586 build by Hagar
  1145.             Put Towers mailer code back in the mix, since he had fixed some
  1146.             bugs in the mailer and generally made it more robust. Seems to be
  1147.             working fine.
  1148.             Guess I'm just writing this to remind myself what I have done from
  1149.             now on since I have decided not to release any more of my builds.
  1150.             Was confusing people no end having different menu systems, so I'll
  1151.             be the only one running a42 and up...
  1152.  
  1153.  
  1154. --- a41 --- WatCom 586 build by Hagar
  1155.             Fixed a *LONG* standing bug where mail export would never export
  1156.             message area number 1. It now does so.
  1157.             Added a status messge to the offline mail IMPORT function, it will
  1158.             now tell you how many messages were successfully imported, and also
  1159.             log it in the system\linex.log.
  1160.             Both qwk aand bluewave imnports have this function now.
  1161.             Hopefully fixed the multiple background exports thread problem where
  1162.             it would start a background export every time u hit download  instead
  1163.             of realizing an export was already in progress, at least I can't get
  1164.             it to happen here anymore. There is a cosmetic problem where the system
  1165.             will say created export thread will let you know etc.. after the an
  1166.             export is already in progress message.
  1167.  
  1168. --- a40 --- WatCom 586 build by Hagar
  1169.  
  1170.             IMPORTANT NOTE:
  1171.             I have switched to using Betels dll's, (The ones enclosed in his
  1172.             full distribution pak) to make life easier for anyone trying the
  1173.             two different versions. You will now only have to change menusets
  1174.             to match the exe yur running, no more switching dll's. PLEASE
  1175.             UPDATE your dll's with the ones in this zip file if you were running
  1176.             *ANY* previous alpha build!!!!!!!
  1177.  
  1178.             Yes, it's now optimized for pentiums, I am told it should
  1179.             still run on 386/486 platforms. Let's hope they're right<G>
  1180.             Worked on the lmr prompt to make it more pleasing, still some
  1181.             work to do on it...
  1182.             Ok i was not real happy with my LMR prompt, so now it's an
  1183.             entry in the language.text file it should look like this:
  1184.               -----Snip-----
  1185.                    #908 LMR Update prompt
  1186.                    [ans]\rUpdate your LastRead Msg Pointers?[Y/n]
  1187.                    [asc]Update your LastRead Msg Pointers?[Y/n]
  1188.               --------------
  1189.             edit yur language.text to reflect this change and yur users will
  1190.             have a prompt after download.
  1191.  
  1192.  
  1193. --- a39 --- WatCom 386 build by Hagar
  1194.             Fixed a problem with the rexxx function AdeptChangeGroup.
  1195.             Also my providors newserver finally came back up allowing me to
  1196.             test nntp in/out and it works like a charm I'm pleased to say.
  1197.             Had a report of screen corruption during nntp configuration,
  1198.             that too is gone (at least it dosen't happen here now).
  1199.             New feautre (tiny one) on offline mail downloads rather than
  1200.             blindly updating lmr's it will now prompt you to find out what
  1201.             you want to do, update em or leave em as is.
  1202.             No change required to language.text for this one
  1203.             Possible problem with msgeditor not respecting uers timeleft
  1204.             should be  cured with this build too...
  1205.             Also cured a problem where adept was searching for mmpm.dll, this
  1206.             was caused by me at link time, it is now cured and u should not
  1207.             need mmpm installed to run adept anymore. Sorry bout that to you
  1208.             folks who have no soundcard and are trying to run one of my earlier
  1209.             alpha's.
  1210.  
  1211.  
  1212. --- a38 --- WatCom 386 Build By Hagar
  1213.             Ok. Found (thanks to safehex) another nast bug that could trap
  1214.             adept. If u hit enter or reply to a message in netmail area
  1215.             adept would trap. Terminated with extreme prejudice this farkin
  1216.             bug...
  1217.             And also badpass.menu now works, this menu if it exists in
  1218.             \adept\menus will be executed when a user exceeds the password
  1219.             retry count u have set... DumbUser.Menu should work now too
  1220.             (I haven't tested this one but it's virtually an identical call
  1221.             to the badpass.menu thing so it should work).
  1222.             Put in some code to hopefully nail this problem where if a user
  1223.             timesout due to inactivity it will now hang him up stead of just
  1224.             sitting there fat dumb and happy counting time :> I need help
  1225.             with this one cause i haven't been able to make it happen here..
  1226.             so lemme know if it's any better now.
  1227.             Found and (hopefully) fixed a problem with downloads, where if a
  1228.             user hungup during a download adept would just sit there.
  1229.             Should be ok now.
  1230.  
  1231. --- a37 --- WatCom 386 Build By Hagar
  1232.  
  1233.             Fixed a nasty bug  where if a user dropped carrier during an
  1234.             offline mail pack, the files would remain locked, effectivly
  1235.             disabling offline mail downloads for that node till adept was
  1236.             shutdown and restarted. Thanks to safehex for reporting this nasty
  1237.             and being so detailed about his bug report, made it easy to spot
  1238.             the problem and correct it. I have tested the fix here by tagging
  1239.             all message areas (all 900 of them) and telling it to do a download
  1240.             then rudely disconnecting on it. The files remained unlocked. Next
  1241.             call i could do a normal download, if there is *ANY* where else in the
  1242.             system u know of that files are remaining locked please point it
  1243.             out to me.
  1244.  
  1245.             One more thing, I haave had a trap in pmmerge.dll on startup
  1246.             two times now with various builds, I don't know yet what's causing
  1247.             this weirdness, but a subsequent start comes up ok for me. Weird.
  1248.             I'm running warp3 fixpak26 with the warp4 rexx dll's installed.
  1249.             If anybody else gets pmmerge.dll traps on startup, I would love to
  1250.             hear  what your system is running.  Maybe it's just my mix of
  1251.             software, in any case let me hear from you. (If it simply won't
  1252.             come up no matter how many tries u do, try adept /nodes x /dontslam
  1253.             this maybe enough to get it to come up, meantime I'll keep looking)
  1254.  
  1255.  
  1256. --- a36a --- WatcCom 386 Build by Hagar
  1257.  
  1258.              Didn't change the version number in this one, basically what i did
  1259.              was take the most stable version i had (1.07k) and add the new
  1260.              menudriver and new features to it, in an attempt to address
  1261.              safehex's off-line mail problems with locked files if a user
  1262.              drops carrier during a mail pack run. The code should be really
  1263.              stable at this point. I  would just like to suggest a simple
  1264.              adept command line, start it with adept /nodes 32 or however many
  1265.              nodes u have confgured for your machine. Nothing else should be
  1266.              necessary on the command line, if u have *ANYTHING* else on the
  1267.              command line take it out, it will run better with the defaults
  1268.              for all other parameters. I run mine here with adept /nodes 8 and
  1269.              so far have had *NO* troubles. Thanks for trying my build.
  1270.  
  1271.  
  1272. --- a36 --- WatCom386 Build by Hagar !!!
  1273.  
  1274. --- Added my first feature<g> and i didn't break anything (kewlness). The bbs will
  1275. now display the file ToLow.Asc (in the text dir) if it exists whenever a user
  1276. tries to access a menuitem that his security does not allow him to use. No more
  1277. users wondering why menu option don't work for them. Thanks to BK for this
  1278. great suggestion...  Oh and by the way this build is very stable, been running
  1279. here for 3 days, no traps or other problems/weirdness. Looks like my surgery
  1280. of the code was a success<g>.
  1281.  
  1282. ---  Late breaking change, have also added check for min/max age on menuitems and
  1283. will diplay ToYoung.Asc/ToOld.Asc respectivly if the user fails min or max age.
  1284. Will only display the files if they exist in the text dir, otherwise it's business
  1285. as usuual<g>....
  1286.  
  1287.  
  1288.  
  1289. --- a35 --- WatCom386 Build by Hagar !!!
  1290.  
  1291. Fixed the "sticky" pm pulldowns so they don't bleed thru other apps
  1292. anymore. Fixed a bug in the menu driver that could cause adept to
  1293. trap randomly. Fixed nntp out, it should now work as advertised.
  1294. Fixed a bug with rexx loading "large" erx files, these should no longer
  1295. cause traps. Fixed the quickscan/detailed scan options so they return
  1296. to the list instead of returning to the msg menu. Fixed local text
  1297. import into adepts editor, (Note u must have sec1 > 99 to use this) to
  1298. import a text file just hit escape (or Control K) followed by an L, it will
  1299. prompt you for a filename to read in. Fixed the events save function, it will
  1300. now correctly save start and end times stead of rounding them off. Note, this
  1301. build uses 1.07g style BINARY event files compiled from a text Events.Text.x
  1302. where x is the node number, ie 1 2 3 etc.., if u still have 108 style text
  1303. event files just edit them to take out the LASTRAN keyword and they will
  1304. work fine, if u do not remove the LASTRAN keyword, results will be unpredicatble.
  1305. I have also included Mcd's excellent language.text file, if yur gonna use it
  1306. instead  of just modifying yours to match, please use the enclosed login.a??
  1307. files so the fielded login prompts will look proper, edit login.a?? to suit
  1308. your system, this is the way they appear on my system. (I like them others may not)
  1309. You will note, there is a full set of dll's in this zip, *USE* these, I linked
  1310. a35 with these dll's and know they work, others may or may not work. These will
  1311. work, nuff said. :>
  1312. As i said above the language file is Courtesy of Matt Davis (McD on irc chat)
  1313. ask him about mcmail the absolute best mail list...
  1314.  
  1315.  
  1316. ... Hagar...
  1317.  
  1318. Bug Reports to:
  1319. e-mail: mariod@ican.net
  1320. fidonet: 1:222/10.0@fidonet
  1321. telnet/ftp: 206.248.78.1
  1322. The DogStar BBs
  1323.  
  1324. --- a26 ---  ***** NOTE *********************************************
  1325.  
  1326.              Everything from this point on down is/was towers original
  1327.              changes, I have included this stuff here as it's  prolly
  1328.              the only documnetation of the new chatserver and new
  1329.              menu sstructures, as well as some new features like
  1330.              external full screen editor support etc. You should
  1331.              read this document from EOF to top to get a picture of
  1332.              just what's in Alpha (Now Known as Hagar Builds)
  1333.              series Adept.exe's
  1334.  
  1335.              **********************************************************
  1336.  
  1337. Fixed a bug in the TCP/IP support for mail sessions.  It would try to
  1338. 'dial' the site and always return no carrier.  Works like a charm now.
  1339.  
  1340. Fixed a bug if a new user answered 'N' to the Are you a new user
  1341. question it would act as if they had said yes.
  1342.  
  1343. Made some changes in loging a user off.  It wasn't always hanging up
  1344. or resetting the comm port.
  1345.  
  1346. --- a25 ---
  1347.  
  1348. Made some changes that should make EMSI mail sessions more reliable
  1349. if done over TCP/IP or a bad connection.
  1350.  
  1351. Found the cause of several of the infamous SMTP and NNTP mail traps.
  1352. Bad date fields.
  1353.  
  1354. Changed NNTP out to work like SMTP out, hopefully this will fix the
  1355. outgoing NNTP bug.  Not sure.
  1356.  
  1357. I now have an official support site for placing files on and I am
  1358. in the process of setting up a support BBS at os2.kcmo.com.  Please
  1359. help support and grow the site.  I will place all alphas, betas and
  1360. releases of adept and any utilities that exist on this site.
  1361.  
  1362. tower@sound.net is my current e-mail address.
  1363.  
  1364. PLEASE limit bug reports to the latest full alpha release on the
  1365. os2.kcmo.com site.  I.E. Your adept.exe and .dll's must be those
  1366. includes in the adept108aXX archives and no other archives.  It
  1367. would be best if you also made sure you can reproduce the bug
  1368. with the latest release on the site.  I need the module name and
  1369. the ####:######## number that is after it.  Bug reports for
  1370. anything other then the alphas will be ignored.
  1371.  
  1372. --- a24 ---
  1373.  
  1374. Fixed several possible bugs where files wouldn't get closed in mail
  1375. import or export.
  1376.  
  1377. Royally screwed up on the rexx interface to the chat on a intrum beta
  1378. that I put out.  It's fixed now.
  1379.  
  1380. Put ansi metas back to the way they where, looks like we where doing em
  1381. right just that some stupid shit terminals don't follow the ansi spec
  1382. 100 percent.
  1383.  
  1384. Fixed a bug in AdeptSysChatCustomMsg where it would never send the
  1385. custom message to the server.
  1386.  
  1387. Changed the way the 'Node' field works in the ChatMsg's formats.  It
  1388. will ONLY accept numbers now, and -1 in Custom message means send to all
  1389. in the channel.
  1390.  
  1391.  
  1392. --- a23 ---
  1393.  
  1394. I am now including my GIOMT.DLL as standard to be used with a23 and
  1395. beyond.  I am adding some changed to GIOMT.DLL that a23 is dependent
  1396. on.
  1397.  
  1398. NOTE: a23 will run with previous builds of GIOMT except the adept
  1399.       linking functions escape sequence will not work.
  1400.  
  1401. AdeptRawLink and AdeptNodeLink now accept an escape sequence of
  1402. '===000'  if this is typed by either the remote or local host
  1403. it will drop out of the linked connection.  If you are using
  1404. AdeptRawLink, for things like Telnet and or Dialout, I.E. YOU
  1405. opened the port that it's linked to and going out on YOU must
  1406. CLOSE the port with AdeptRawClose or it will continue to remain
  1407. open.  DO NOT Close the users (line) port.  Or you will hang up
  1408. on them.
  1409.  
  1410. The '===000' should allow Binary transfers because the odds of a
  1411. '===000' in that exact sequence in 1.5 seconds of each other is
  1412. extreamly low.  This is similiar to the escape sequence used in
  1413. TIA and other interfaces that allow Binary compatability.
  1414.  
  1415. If you do not have the ####:######## number next to Adept.EXE,
  1416. GIOMT.DLL or the module that crashed, ALONG with the module name I
  1417. WILL Need your Popuplog's and your trap.logs to help diagnose
  1418. bugs.
  1419.  
  1420. --- a22 ---
  1421.  
  1422. In a earyler version I disabled autopassword generation, looks like
  1423. I didn't catch it in every spot.  It's eradicated now.
  1424.  
  1425. Looks like memory will still squeezed a little too tight on a21
  1426. so some people had random traps.  Bumped it up some more in this
  1427. build.
  1428.  
  1429. I am including a new version of GIOMT.DLL, it's called "GIOMT.DL_"
  1430. you must rename it to GIOMT.DLL if you want to use it.  This build
  1431. will log all exceptions extencively to a file called stgiomttrap.log.
  1432.  
  1433. This DLL can also be used to help find GIOMT traps in CServer.exe
  1434.  
  1435. --- a21 ---
  1436.  
  1437. I crunched memory way too tight in a20 so that it crashed almost
  1438. instantly.  This should be fixed.
  1439.  
  1440. --- a20 ---
  1441.  
  1442. Fixed a bug in the message area, if the user said 'yes', quote the message
  1443. it would work fine, if they said, NO, it would crash the BBS.
  1444.  
  1445. Fixed a bug in the user editor, if the sysop edited the users offline
  1446. mail tags it would never save them.
  1447.  
  1448. Restructured the way the BBS software starts up it's nodes.  It should be
  1449. a LOT faster now.
  1450.  
  1451. Found a huge, nasty, major bug in the events system!  This has been there
  1452. a while and can easyly account for random traps, OS/2 system crashes,
  1453. system hangs, a long long list of possible problems.  Right now
  1454. the new events system uses the same events.text file, the events
  1455. editor DOES NOT WORK, DO NOT USE IT!!!  Binary event files no longer
  1456. work in this build.  The BBS software will see all events as reset
  1457. after this version starts up so any and all forced events will be
  1458. run again.  However after they have run once everything should act
  1459. and work like the old versions, i.e. only run a forced event once
  1460. within it's time period.
  1461.  
  1462. Shrunk the memory footprint of the BBS software signifigantly, those
  1463. running large node counts will see a dramatic difference in system
  1464. memory usage.
  1465.  
  1466. --- a19 ---
  1467.  
  1468. Fixed a I/O bug that was causing some files to get filled with grunged
  1469. data.  This is one of those bugs that could cause all sorts of
  1470. problems all sorts of places in the software.
  1471.  
  1472. Fixed a long standing bug in the ANSI Metas, wouldn't reset the high
  1473. bit for colors.
  1474.  
  1475. Made some changes to cserver.exe
  1476.  
  1477. Added the rexx function AdeptNodeLink, allows you to link up 2 nodes
  1478. directly to each other.  Could be used for things like allowing
  1479. two players to play doom with each other, transfer files, whatever.
  1480.  
  1481. AdeptNodeLink(NodeFrom, NodeTo);
  1482.  
  1483. Fixed a long standing bug that existed in the mailer,  (At least as
  1484. far back as v0.97) if sending mail to multiple domains it wouldn't
  1485. delete the stray or remaining archives/packets that where sent.
  1486. Now it does.
  1487.  
  1488. --- a18 ---
  1489.  
  1490. Fixed the quite annoying EMSI CRC Failure bug!!!  This within itself
  1491. is grounds for a new release.   I also made some changes that should
  1492. fix some of the EMSI timouts several have complained of.
  1493.  
  1494. The /ignorecrc option is no longer available.
  1495.  
  1496. Fixed a bug in reply quoting with external editors.
  1497.  
  1498. Fixed the last few bugs in menucvt.cmd, it should really only be run
  1499. once, it can be run as many times as you want.  It now propely
  1500. converts all menus.
  1501.  
  1502. Fixed smtp and nntp posting from QWK and BlueWave.
  1503.  
  1504. --- a17-r2 ---
  1505.  
  1506. Added support for the dorinfo1.def drop file.  It will put the file
  1507. dorinfo1.def into the System\line# sub-dir.  This follows the base
  1508. dorinfo style format, no additional extentions.
  1509.  
  1510. --- a17 ---
  1511.  
  1512. The BBS will now create a msgtmp file in the .\System\Line# sub-directory
  1513. for external editors to use for users who want to quote their messages.
  1514.  
  1515. The BBS wasn't running extle.cmd if the user has line editor chosen
  1516. it would run extfse.cmd, this is fixed.
  1517.  
  1518. The BBS wasn't running the external editors if the message was a
  1519. reply, this is also fixed.
  1520.  
  1521. NewCLNT.cmd now works as a complete replacement for the internal
  1522. chat.  I also added some better feedback and the tab key will
  1523. redisplay what you last typed if you press it.  I sugest you
  1524. use this, I will be adding more and more features as the builds
  1525. go on!
  1526.  
  1527.  
  1528. --- Example use of AdeptSysChatMsg ---
  1529.  
  1530. /*
  1531.    This will annouce a users logon to the entire system  if placed in your
  1532.    atstart.cmd
  1533. */
  1534. ARG line
  1535.  
  1536. UserName = AdeptGetvar(line, 1)
  1537. UserNode = Line
  1538.  
  1539. SendString = '{FC--- {FGSystem Message {FC---{FG' || UserName ||' {FChas logged on to node {FG' || UserNode
  1540.  
  1541. AdeptSysChatMsg(line, SendString)
  1542.  
  1543. /* End Logon Notice Sample */
  1544.  
  1545. /*
  1546.    This will annouce a users logoff to the entire system  if placed in your
  1547.    atend.cmd
  1548. */
  1549. ARG line
  1550.  
  1551. UserName = AdeptGetvar(line, 1)
  1552. UserNode = Line
  1553.  
  1554. SendString = '{FC--- {FGSystem Message {FC---{FG' || UserName ||' {FF has logged off node {FG' || UserNode
  1555.  
  1556. AdeptSysChatMsg(line, SendString)
  1557.  
  1558. /* End logoff notice sample */
  1559.  
  1560. Fixed a bug in AdeptSysChatPrivMsg, if the message was to node 0 it
  1561. wasn't ever sent.
  1562.  
  1563. Changed the syntax of AdeptSysChatInput
  1564.  
  1565. AdeptSysChatInput(line, "BUFFERNAME", AbortKeyList, InputText);
  1566.  
  1567. KeyList is a optional command.  If you don't pass it a KeyList and the
  1568. user presses enter on a line it will return 1, if you pass it a keylist
  1569. and the user presses enter it will return 1, for all other keys
  1570. pressed it will return their ascii value.
  1571.  
  1572. The keylist should not contain the ascii numeric value for a key but the
  1573. actual ascii key itself.  I.E. Ascii 3, ^C would be a heart.
  1574.  
  1575. If InputText is passed it will place it in the users buffer as if
  1576. they had typed it.  They can backspace over it and delete the
  1577. text passwed to the buffer.
  1578.  
  1579. AbortKeyList and InputText are optional, you don't need to pass them
  1580. for AdeptSysChatInput to work.
  1581.  
  1582. I forgot to document that AdeptSysChatInput returns a 1 if all is well
  1583. and the user pressed enter.
  1584.  
  1585. I also forgot to document that it can return LOSTCARRIER if the user
  1586. has dropped carrier.
  1587.  
  1588. Adept SysChatInput also now properly returns if the user has timed
  1589. out instead of LOSTCARRIER, I also added a new return code:
  1590.  
  1591. IRC_IDLETIMEOUT if the user idle's out
  1592.  
  1593.  
  1594. Added a new meta {ZZ don't convert any metas in this string past this
  1595. one.
  1596.  
  1597. Fixed several bugs related to the chat server.
  1598.  
  1599. The BBS wasn't running the the EXTFSE.CMD or LEFSE.CMD on replies, fixed.
  1600.  
  1601. I also stopped caching EXTFSE.CMD, EXTLE.CMD and MSGTOUSEON.CMD.
  1602.  
  1603. --- a16 ---
  1604.  
  1605. Fixed a few bugs in the menucvt.cmd file, it will not work from any
  1606. drive/sub-directory.  (Thanks to Jewie for the changes).
  1607.  
  1608. The AdeptInitRexx(line) command is REQUIRED in order to use the
  1609. following functions.
  1610.  
  1611. Constants such as the IRC_NOTIMELEFT are defined via this command so
  1612. if you don't use it you won't be able to use the system constants.
  1613.  
  1614. The IRC in the IRC_ constants stand for Input Return Code, NOT Internet
  1615. Relay Chat.
  1616.  
  1617. Added a new rexx function AdeptSysChatMsg(line, Text)
  1618.  
  1619. You format how the text is to be displayed to the remote user.  Please
  1620. use the {COLOR metas or ascii users will get ansi if you put it in the
  1621. Text.
  1622.  
  1623. This can be used for annoucements such as User so and so has logged on
  1624. via node such and such.  Be creative.
  1625.  
  1626. RetC = AdeptSysChatInput(line, "BUFFERNAME")
  1627.  
  1628. The above function will return 1 if all is well and the user pressed
  1629. return.   It can also return any of the below constants.
  1630.  
  1631. A function very similiar to AdeptInput except specificly designed to
  1632. be used with multi-node chat.
  1633.  
  1634. The IRC constants are:
  1635.  
  1636. LOSTCARRIER if the carrier had been dropped.
  1637.  
  1638. IRC_NOTIMELEFT if no time is remaining.
  1639. IRC_LOCKEDOUT if the sysop locked the user out.
  1640. IRC_MORON if the system hit the moron key.
  1641. IRC_REPROMPT to request a redraw of the prompt or screen.
  1642. IRC_ENDSYSOPCHAT if the sysop broke into chat and just ended it.
  1643.  
  1644. IRC_IDLETIMEOUT if the user idle's out
  1645.  
  1646. IRC_CHATWAITING if a chat message is waiting to be processed.
  1647. IRC_CHATDOWN if the chat server went down.
  1648.  
  1649.  
  1650. "Buffer" would be the variable name to place what the user typed on the
  1651.          input line.
  1652.  
  1653. RetC = AdeptSysChatGetMsg(line)
  1654.  
  1655. Ok, this command was extreanly complex, so I decided to symplify it as
  1656. best as possible.
  1657.  
  1658. You call this when you receive a IRC_CHATWAITING.
  1659.  
  1660. It will Return
  1661.  
  1662. 0 - Didn't receive a packet or bad packet
  1663.  
  1664. 1 - Received a chat packet that doesn't have a chatmsg attached
  1665. 2 - Received a chat packet that does have a chatmsg attached
  1666. 3 - Received a chat packet that does have a chatmsg with a chat data
  1667.     packet attached.
  1668.  
  1669. Instead of having you pass a bazillion variables I automatically stuff
  1670. the variables for you with the data and known names.
  1671.  
  1672. The variables are
  1673.  
  1674. The following are set if the return code is 1
  1675.  
  1676. PKTTYPE   - Packet type definitions follow.
  1677.  
  1678.            100 - Standard Public Conference Message
  1679.            101 - No Prepended Public Conference Message
  1680.            102 - Private message to anouther user/node
  1681.            103 - Invite a user to a channel
  1682.            104 - Leave chat
  1683.            105 - System Global Message to all no matter where
  1684.  
  1685. PKTSERIAL - Packet Serial Number (Currently the time it was sent)
  1686. PKTCRC    - 32 bit CRC of the ChatMsg if one it to be sent for
  1687.             validation of the chat message.
  1688.  
  1689. The following are also set if the return code is 2
  1690.  
  1691. CHATMSGFROM     - User or Node number the chat message was from.
  1692. CHATMSGFLAGS    - Flags for the message (Currently unused)
  1693. CHATMSGSCRAMBLE - Scramble code for the message, I.E. Only those with the
  1694.                   same code set can see it.
  1695. CHATMSGTO       - Who the message is to. If blank, it's considered to be
  1696.                   a public style message for use public chat.
  1697.  
  1698. The following are also set if the return code is 3
  1699.  
  1700. CHATMSGDATALEN  - Length of the data.
  1701. CHATMSGDATACRC  - CRC of the Data.
  1702. CHATMSGDATA     - The data, usually the chat messages text, could be
  1703.                   binary if you so desire.  4k limit.
  1704.  
  1705. RetC = AdeptSysChatJoinConf(line, ConferenceName)
  1706.  
  1707. 0 = Join Not Successful
  1708. 1 = Access Denied to Channel
  1709. 2 = Channel Joined
  1710.  
  1711. RetC = AdeptSysChatLeaveConf(line)
  1712.  
  1713. Returns 1 every time.
  1714.  
  1715. If the user is in Conference name it will remove the user from the
  1716. conference.
  1717.  
  1718. RetC = AdeptSysChatPubMsg(line, Message Text)
  1719.  
  1720. 0 = Message wasn't sucessfully sent misc error
  1721. 1 = Message was sent
  1722.  
  1723. The user must be a in a conference for others to see the message
  1724. or it will just go into limbo.
  1725.  
  1726. RetC = AdeptSysChatPrivMsg(line, Node, Message Text)
  1727.  
  1728. 0 = Message wasn't sucessfully sent mirc error
  1729. 1 = Message was sent
  1730.  
  1731. If the user is not on a particular node it will also go into
  1732. limbo.
  1733.  
  1734.  
  1735. RetC = AdeptSysChatCustomMsg(line, PktType, To, Message)
  1736.  
  1737. 0 - Syntax error
  1738. 1 - Sent to server
  1739.  
  1740. AdeptSysChatCustomMsg allows you to send messages to the user that you
  1741. can parse via the rexx AdeptSysChatGetMsg.  This allows you to add new
  1742. chat options, functions and types.  You cannot specify a type below
  1743. 1000, all types MUST begin with 1001 or higher, the bottom 1000 are
  1744. reseved for system use.  You can have fun with this.
  1745.  
  1746. RetC = AdeptSysChatUserConnected(line)
  1747.  
  1748. Return Codes are:
  1749.  
  1750. 0 - Syntax Error
  1751. 1 - User connected
  1752. 2 - User not connected
  1753. 3 - Server down, obviosly the user is not connected.
  1754.  
  1755. Checks to make sure the user is properly connect to the chat server.
  1756.  
  1757. RetC = AdeptSysChatConnectUser(line)
  1758.  
  1759. Return Codes are:
  1760.  
  1761. 0 - Syntax error
  1762. 1 - User connected with server
  1763. 2 - Failed to connect user to server
  1764. 3 - Server unavailable
  1765.  
  1766. Will connect/sign up a user with the chat server.
  1767.  
  1768. RetC = AdeptSysCheckForServer(line)
  1769.  
  1770. Return Codes are:
  1771.  
  1772. 0 - Syntax error
  1773. 1 - Server not available
  1774. 2 - Server available
  1775.  
  1776. Checks to make sure the chat server is available.
  1777.  
  1778. RetC = AdeptSysChatReconnectUser(line)
  1779.  
  1780. Return Codes are :
  1781.  
  1782. 0 - Syntax error
  1783. 1 - User connected to server
  1784. 2 - Failed to reconnect user
  1785. 3 - Sever not available
  1786.  
  1787. ChatReconnectUser should only be used to reconnect a user to the chat
  1788. server after it has gone down and the user was chatting in a conference.
  1789.  
  1790. RetC = AdeptSysChatMessageWaiting(line)
  1791.  
  1792. Return Codes are:
  1793.  
  1794. 0 - Syntax Error
  1795. 1 - There is a chat message waiting
  1796. 2 - Error User Not Connected
  1797. 3 - Error Server is Down
  1798.  
  1799. The BBS software makes calls to only one function to check to see
  1800. if a user has chat messages waiting.
  1801.  
  1802. If the file CHATREAD.CMD exists in the menus sub-directory for the
  1803. particular language the user has chosen it will execute that script
  1804. instead of the internal BBS function for displaying the message
  1805. to the user.
  1806.  
  1807. This allows you to customize the chat system from anywhere in the
  1808. BBS and not just make your own chat client/system.
  1809.  
  1810. The file chatread is not called if there are messages and your are
  1811. using the adeptchatinput function.  It is called while you are
  1812. using any other adept input or system function.
  1813.  
  1814. The BBS Software will now look for the file EXTFSE#.CMD or EXTLE#.CMD
  1815. before loading the full screen or line message editor.  If the file
  1816. exists it will execute it instead of the internal editors.  If the
  1817. MSGTMP file in the users \Adept\System\Line# sub-directory doesn't
  1818. exist it considers the message as aborted, failed, etc.
  1819.  
  1820. YOU MUST HAS A SEPERATE .CMD FILE FOR EACH NODE.
  1821.  
  1822. The BBS will now execute (if exists) the .CMD file MSGTOUSERON.CMD
  1823. when a message is posted by anouther user on the BBS to anouther
  1824. user on the BBS.  You can this use this command file to notify
  1825. the reciepient that they have new mail waiting.  I also added
  1826.  
  1827. {DA Who the message was to
  1828. {DB The Message Subject
  1829. {DC Area name message was posted to
  1830. {DD Node number of receipient
  1831. {DE Area number the message was posted to
  1832.  
  1833. A sample MSGTOUSERON.CMD is included along with this readme.
  1834.  
  1835. A sample newclnt.cmd is included with this readme as well.
  1836.  
  1837.  
  1838. The Q or q keys no longer cause cserver to quit, only ESC works now.
  1839. Fixed pgdn.
  1840.  
  1841. Fixed a bug in {PQ
  1842. You must also add {PQ to the end of prompt #336 for it to work properly.
  1843.  
  1844. If an event was set to reboot the machine it wouldn't, fixed.
  1845.  
  1846. --- a15 ---
  1847.  
  1848. Fixed a bug where the system would overwrite the first user record
  1849. if the user hung up durring new user login.
  1850.  
  1851. Added some EMSI crc debugging.
  1852.  
  1853. {PQ - Displays press any key to continue if the displayed amount of lines
  1854.       is more then the users screen length.
  1855.  
  1856. Fixed Menu Type 7's when called from a .menu file.
  1857.  
  1858. Menu type 6 was also broken when called from a .menu file.  It too
  1859. is fixed.
  1860.  
  1861. Found and fixed the cserver.exe DosCall1.DLL Trap.
  1862.  
  1863. Added a new line to language.text, item #435, User currently not
  1864. available for chat.  I.E. Writing a message or marked as busy.
  1865.  
  1866. CServer now supports the display of up to 32 nodes.  Actually
  1867. Cserver has no actuall limit on how many people are in chat, I just
  1868. haven't written the display code to match the complete capabilities
  1869. of the chat server.
  1870.  
  1871. Press Page Down for the second page nodes 17 - 33; Page up for the
  1872. previous list.
  1873.  
  1874. The ESC key or Q key will quit the chat server instead of having to
  1875. press ^BREAK anymore.
  1876.  
  1877. Changed the way cserver updates it's screens.  I'm now working on making
  1878. cserver faster/more effiecient.
  1879.  
  1880. Multithreade chat handling has been turned back on in CServer.  This
  1881. should speed it up considerably.
  1882.  
  1883. The way multinode chat in both the BBS and cserver have been changed
  1884. to allow faster/cleaner support of the chat system.
  1885.  
  1886. a14
  1887.  
  1888. Added checking for grunged file and message area config files.
  1889.  
  1890. Added some more carrier protection for the main BBS thread.
  1891.  
  1892. Fixed two seperate problems with carrier detect.  When a new user
  1893. logged into the BBS it would automatically set carrier detect checking
  1894. to off.  Oh joy.
  1895.  
  1896. In the message editor, there where some instances where carrier detect
  1897. wouldn't work properly.
  1898.  
  1899. While working on the carrier detect code I added better support for
  1900. carrier detect to the menu system.
  1901.  
  1902. Added a new menu type, 1002.  Logoff and Relog on.
  1903.  
  1904. This will display prompt #935 (currently unused) and display the
  1905. file Relogin.Asc/Ans/Avt to the user before commencing with the
  1906. relogin.  This is a COMPLETE logoff with relogin, except that it
  1907. doesn't drop carrier.  ATEND.CMD will be run, etc.  I have added
  1908. two new rexx function functions.
  1909.  
  1910. AdeptSetRelogin(line, TRUE/FALSE) - Tells the BBS to relog the user back
  1911.                                     on after logoff is completed.
  1912.  
  1913. AdeptCheckForRelogin(line) - Will return 1 if the user is requesting a
  1914.                              relogin after logoff.
  1915.  
  1916. Fixed several message area list/find bugs.
  1917.  
  1918. Fixed several bugs in QWK/Blue Mail Export.
  1919.  
  1920. -- Begin a13 Changes --
  1921.  
  1922. Lets hope this baby is lucky 13!
  1923.  
  1924. The auto password generation feature is no longer in existance, it was
  1925. quite annoying lots asked that it be removed, it's done.
  1926.  
  1927. Adept now has a FTP server built into the BBS software.  This is the
  1928. first alpha that it is available.   Users log into the server with
  1929. the name that they use on the BBS.  If you wish to allow Anonymous
  1930. users you need to create a account on the BBS called Anonymous.
  1931.  
  1932. The server will user the Anonymous accounts settings in order to
  1933. decide what areas and files the user has access to.
  1934.  
  1935. The server ALWAYS has an exception handler guarding it for now
  1936. since it is alpha.   Uploading of files is not permitted with
  1937. this build of the server for security reasons.
  1938.  
  1939. There is a new tag FTPNAME in the file area editor.  It allows you
  1940. to define the name of the directory shown to represent that area
  1941. on the server.  If you don't put a name it will use the area name
  1942. but I sugest you use a name, all lower case, 8 chars or so in
  1943. length instead of the area name (it could be the area name if you
  1944. wish).
  1945.  
  1946. I will be adding features to the server like for the root dir to auto
  1947. create a file called dir.lst that will basically be the 'area' list
  1948. used in the BBS that they can ftp.
  1949.  
  1950. I also plan on building file lists on the fly that they can ftp off
  1951. the server just like listing files from the BBS.  I will also
  1952. extend the server to allow users to be assigned standard file
  1953. directories that they can access but that is still a few weeks
  1954. off.
  1955.  
  1956. The server will honor users time and file and age limits.
  1957.  
  1958. To start the ftp server add the /FTP command line option to
  1959. Adept.  Adept.exe /ftp
  1960.  
  1961. Ok, next more good news.
  1962.  
  1963. I think we got the cserver bug!  It was NASTY taking out the whole
  1964. damn operating system.  It's a bug in the design of IBM's TCPIP
  1965. stack that we where causing to expose itself.  It shouldn't
  1966. happen any longer.  If this build of cserver is clean I will
  1967. start adding lots of new functions to it. :)
  1968.  
  1969. I did fix a logout of chat conference bug that has been there since
  1970. build #1, if a user left a conference it still showed he/she in
  1971. the conference as if they didn't leave, now it removes them.
  1972.  
  1973. There where several other minor bugs in the BBS software that I
  1974. also fixed.
  1975.  
  1976. Fixed named pipes, appearently I broke em when I did the I/O redesign
  1977. several builds back.
  1978.  
  1979. -- end a13 Changes --
  1980.  
  1981.  
  1982. -- Begin a12 Changes --
  1983.  
  1984. Found a MAJOR bug in the BBS software.  Several sysops have reported that
  1985. adept hasn't been saving offline mail tags for users.  This was only
  1986. a minor bug caused by a major problem.
  1987.  
  1988. Is the design of the BBS software it relied on every user being assigned
  1989. a unique user number.  This number was tied to the their location in
  1990. the user file.  Well over the years it was untied in order to allow
  1991. more flexable use of this number field.  Well in doing so, in some
  1992. builds of adept the number was probably never updated, I know we
  1993. don't change it past the initial logon of the user, but this has
  1994. had to change with a12.  So much is coupled to this that it's amazing
  1995. this hasn't shown up before.
  1996.  
  1997. This bug will manifiest itself in several possible ways.  Offline tags
  1998. not being saved.  User files not being saved.  Users records not being
  1999. properly updated, including call times, time on-line, etc.  LMR's
  2000. not being properly saved or being wrong.
  2001.  
  2002. Fixed the user based number bugs.
  2003.  
  2004. I also included a file called msgfile.zip.  If you are running cserver
  2005. unzip this archive into your adept sub-directory or the same directory
  2006. cserver is being run from (cserver can run from anywhere).
  2007.  
  2008. CServer now has extencive exception handling.  This should allow us
  2009. to find out where the little bugger is trapping.  It will
  2010. create a file called CServerTrap.log when it traps.  It should
  2011. continue on without problems if there is a trap, however if more
  2012. then 5 traps accure the program will exit with a error level
  2013. of 1 and you can restart it.  I sugest running it from a .cmd
  2014. file that restarts it automatically.
  2015.  
  2016. The BBS software will now auto-reconnect you when you are in a chat
  2017. conference when the server goes down, it will now also auto-rejoin
  2018. the channel you where in along with sending the last message you
  2019. typed in.  If you are sitting idle it will inform you that the
  2020. server has gone down and try to reconnect the user.
  2021.  
  2022. -- Begin a11 Changes --
  2023.  
  2024. MORE SPEED.
  2025.  
  2026. That should say it all.  The BBS is blazingly fast now.  I have made
  2027. changes that will affect the ENTIRE system is some cases by factors of
  2028. thousands overall.  These changes do effect almost every aspect of the
  2029. entire BBS's operation.
  2030.  
  2031. Did a major overhaul of the 'new' menu system.  In doing so I also added a
  2032. new 'EMERGENCY ABORT' keystroke.  If a user presses ^A it will
  2033. automatically reset the entire menu system back to the original call to
  2034. the menu system.  This should prevent the possibility of users getting
  2035. 'trapped' in a menu.  I do not believe that this will happen any more but
  2036. I added this option just in case.  The ^A should be a usable keystroke for
  2037. any user comming in on any type of connection.
  2038.  
  2039. The users current location should now be properly displayed.  Also check
  2040. out the 'NEWLOCATION' keyword for menu items. :)
  2041.  
  2042. The following Menu Functions are available.
  2043.  
  2044. BEGINMENU - Mark the begining of a menu.
  2045. ENDMENU   - Mark the end of the a menu.
  2046.  
  2047. Everything before and after the above are ignored by the menu parser.
  2048.  
  2049. PROMPT        - Menu Prompt Text
  2050. PROMPTCOLOR   - Menu Prompt Color
  2051. DISPLAYFILE   - File to display to users instead of menu item text
  2052. MENULOCATION  - Currently location on the BBS
  2053. MENUFLAGS     - Menu option flags.
  2054.  
  2055. The above options can be anywhere within the BEGINMENU and ENDMENU
  2056. options, but are preferably at the top of the menu to assist in
  2057. readability.
  2058.  
  2059.  
  2060. BEGINMENUITEM - Begin Item Definition
  2061. ENDMENUITEM   - End Item Definition
  2062.  
  2063. All of the below functions are ONLY available within the menu item
  2064. definition.  All of the below are relayed to the 'KEY' keyword.  The
  2065. 'KEY' keyword contains the key that represents the menu item.
  2066.  
  2067. KEY           - Key to assing to the menu item.
  2068. MENUCOMMAND   - Command to execute when the 'KEY' is pressed.
  2069. DISPLAYSTRING - String to display to user when displaying the menu items
  2070.                 along with or without a Display File.
  2071. DISPLAYCOLOR  - Initial color for the display string
  2072. DATAOPTION    - Optional data for the menu command
  2073. MINAGE        - Minimum age allowed to use this command
  2074. MAXAGE        - Maximum age allowed to use this command
  2075. MINSEC1       - Minmum security level (based on users security #1) to use
  2076.                 command
  2077. MAXSEC1       - Miximum security level (based on users security #1) to use
  2078.                 command
  2079. MINSEC2       - Minmum security level (based on users security #2) to use
  2080.                 command
  2081. MAXSEC2       - Miximum security level (based on users security #2) to use
  2082.                 command
  2083. FLAGS1        - User flag comparason for access to this command flags #1
  2084. FLAGS2        - User flag comparason for access to this command flags #1
  2085. GENDER        - Genders (YES, Genders I.E. MFO (Male, Female, Other or
  2086.                 whateever you have defined in the language.text as possible
  2087.                 genders)) allowed to access this command.
  2088. STARTTIME     - Start time that this command becomes available. (24hr)
  2089. ENDTIME       - Ending time that this command becomes unavailable. (24hr)
  2090. MINONLINETIME - Minimum time user is online before they can use this
  2091.                 command.
  2092. MAXONLINETIME - Maximum time a user can be online before command becomes
  2093.                 unavailable.
  2094. MINCALLS      - Minimum calls that the user has made to the BBS before
  2095.                 command becomes available.
  2096. MAXCALLS      - Maximum calls that the user has made to the BBS before
  2097.                 command becomes unavailable.
  2098. MINPOSTS      - Minimum number of messages posted before user can access
  2099.                 this command.
  2100. MAXPOSTS      - Maximum number of messages posted before command becomes
  2101.                 unavailable.
  2102. MINUPLOADS    - Minimum number of uploads needed to access this command.
  2103. MAXUPLOADS    - Maximum number of uploads before command becomes unavailable.
  2104. MINDOWNLOADS  - Minimum number of download needed to access this command.
  2105. MAXDOWNLOADS  - Maximum number of downloads before command becomes
  2106.                 unavailable.
  2107. GROUP         - Group number that the user needs to belong to to access
  2108.                 command.
  2109. PORTFLAGS     - Type of port needed (TCP, Comm, Pipe) to access command.
  2110. NEWLOCATION   - Location to set when user executes this command for
  2111.                 calls to items/functions that do not set the system
  2112.                 location.
  2113.  
  2114. All of the above may exist within a BEGINMENUINITEM/ENDMENUITEM in any
  2115. particular order.
  2116.  
  2117. The rewrite of the comm I/O system handling in v1.08a8 has fixed many
  2118. bugs that have existed in Adept for a few years.  I.E. bad comm ports no
  2119. longer cause adept to crash.
  2120.  
  2121. Fixed several long standing bugs in the BBS's command line parsing.
  2122.  
  2123. I.E. On previous versions of adept if you typed adept /nodes without any
  2124. nodes it would crash, just added some checking.
  2125.  
  2126. The BBS Software no longer crashes after notifying you that it cannot
  2127. allocate the BBS structor if you accidently run two copies of
  2128. adept.
  2129.  
  2130. Menu Item #42 'Who is Online' was not working.  Fixed.
  2131.  
  2132. Fixed No Dialout always being turned on and not saving correctly.
  2133.  
  2134. Fixed No Mailer always being turned on and not saving correctly.
  2135.  
  2136. Put back the 'kludge' to keep random FTS-001 session from crashing
  2137. the software.
  2138.  
  2139. Fixed a bug in menucvt.cmd that was causing the prompt line to be
  2140. placed as if it where the first menu item.  This was causing all
  2141. sorts of problems in the BBS softwares new menu design.
  2142.  
  2143. --- a11 r2 ---
  2144.  
  2145. Wasn't updating the current location at every possible location, like
  2146. returning from a command.
  2147.  
  2148. Fixed a small bug in cserver.exe
  2149.  
  2150. Fixed a bug in menucvt.cmd wasn't saving the menu location keyword
  2151. correctly.  Does now.
  2152.  
  2153. Fixed a bug in the sysop logoff, the BBS still showed the sysop as
  2154. being on-line even after loging off.
  2155.  
  2156. Fixed yet anouther possible cserver.exe trap.
  2157.  
  2158. Added 'auto-reconnect' to the chat system.  If a user types something in
  2159. chat and the server is down it will reconnect to the server and
  2160. send the message automatically.
  2161.  
  2162. --- a11 r3 ---
  2163.  
  2164. Fixed a cosmetic bug in the chat auto-reconnect option.
  2165.  
  2166. Changed several functions that are called from the new user login.
  2167.  
  2168. Also made several changes to the new user login code.
  2169.  
  2170. Added some additional parameter checking to the autoexec menu
  2171. called by the new user login.
  2172.  
  2173. The BBS will now look for newuser##.cmd or newuser.cmd before trying to
  2174. auto execute newuser.menu.  And will call one of the above if found
  2175. in place of newuser.menu.
  2176.  
  2177. Added even more parameter checking to the chat server
  2178.  
  2179. -- End a11 Changes --
  2180.  
  2181.  
  2182. -- Changes previous to a11 --
  2183.  
  2184. VC - Denotes a VisualAge C++ Build
  2185. WC - Denotes a Watcom 386/C++ Build
  2186. CS - Denotes a CSet++ Build
  2187.  
  2188. ------------------------------------------------------------------------------
  2189. AdeptXBBS v1.08a#                     - Copywrite 1993-1996 John Morris,
  2190. --------------------------------------+ Gordon Zeglenski and Steven Tower
  2191.                                       : All Rights Reserved
  2192.                                       +--------------------------------------
  2193.  
  2194. 6/30/96 - Alpha Release -----------------------------------------------------
  2195.  
  2196. This build of AdeptXBBS now includes revision control to allow us to build
  2197. in convertion routiens that activate when a revision upgrade is needed.
  2198.  
  2199. This is the first version of AdeptXBBS build with VisualAge.
  2200.  
  2201. The startup proceedure for the BBS software has been heavely modified
  2202. and should remove any problems that have previously accured with the
  2203. loading of many nodes.
  2204.  
  2205. CPU Usage has been reduced by as much as a 1000 percent when
  2206. idle and waiting for a call.  Overall system performance and
  2207. response time should be faster now.
  2208.  
  2209. When you run the BBS software all conversions will be done for you
  2210. on the fly as it loads.  So just run the BBS as you normally would.
  2211.  
  2212. Please report bugs to Steven Tower, tower@sound.net
  2213.  
  2214. 7/1/96 - Second Alpha Release
  2215.  
  2216. Added a new command line option, /NOUPGRADE.   If you use this command
  2217. line option AdeptXBBS will not upgrade the system directories and files
  2218. to any new formats.  This will allow people with v1.07 to test version
  2219. 1.08 for any startup and simple runtime problems.  It is NOT recomended
  2220. that you run the software in this mode.  Also upgrades caused by
  2221. using the new Usersrvr.dll will not be effected since it's considered
  2222. a seperate program/part of the system.
  2223.  
  2224. 7/6/96 - Third Alpha Release
  2225.  
  2226. Changed the PMIIndex support back to the old \Adept\Personal_Mail
  2227. sub-directory.
  2228.  
  2229. 7/9/96 - Forth Alpha Release
  2230.  
  2231. This buils incorporates all the changes that where in Gordons vac1
  2232. build and then some.
  2233.  
  2234. The memory heap code is no longer used.  It looks like it was
  2235. de-stabilizing on some systems.  You will notice the heap usage
  2236. is at 0.00kb on this build.
  2237.  
  2238. New chat system.  Where do I start... This is a total 100% rewrite of
  2239. the BBS's chat server and a 80% rewrite of the internal chat code.
  2240.  
  2241. FLOODING will no longer crash the BBS software.  If you don't believe
  2242. me log in as 8 different users and upload 100k ascii/bin files into
  2243. the chat and watch it handle it quit nicely.
  2244.  
  2245. CPU efficiency is back up up, some of the pre-a4 alphas where a little
  2246. slugish on some functions.  Response times are up and cpu usage is
  2247. down.
  2248.  
  2249. The new cserver.exe has 1 command line option '/debug' this will write
  2250. out an extencive debug log file to determine where traps accure
  2251. if they do accure.  The chat system inside the BBS should be pretty
  2252. bullet-proof.  All the work has been deligated to the chat server
  2253. and so if anything is going to trap it should be the server not
  2254. the client.  This cserver can be taken on/offline at any time and
  2255. brought up any time while the BBS is in/not in use.
  2256.  
  2257. This chat server (while in alpha) uses IBM's TCPIP as it's connection
  2258. medium,  If you local loopback is setup wrong it will not work.
  2259.  
  2260. If you do not see the following when you type ifconfig lo on your command
  2261. line, your loopback is not setup correctly.
  2262.  
  2263. [C:\]ifconfig lo
  2264. lo: flags=809<UP,LOOPBACK>
  2265.          inet 127.0.0.1 netmask ffffff00x
  2266.  
  2267. If you are running warp connect you can add the line
  2268. ifconfig lo 127.0.0.1 to your \mptn\bin\setup.cmd
  2269.  
  2270. if you are running other versions of OS/2 you can
  2271. add 'ifconfig lo 127.0.0.1' to your startup.cmd.
  2272.  
  2273. The server has no limit to the number of users.
  2274.  
  2275. There was a bug with new users joining a chat area while text was
  2276. being piped to other users, it would cause a trap, this is now
  2277. fixed.
  2278.  
  2279. Known Bugs: If two people log on with the same name the server
  2280.             will trap.  This can only happen on the local and a
  2281.             remote node it's not possible on two remote nodes.
  2282.  
  2283. Tis' all.
  2284.  
  2285. 7/12/96 - Alpha Release #5
  2286.  
  2287. READ READ READ READ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  2288.  
  2289. The MENU SYSTEM HAS BEEN REWRITTEN!!!!!!
  2290.  
  2291. Included:  MenuCvt.CMD    -  this command file will convert your .menu
  2292.            files to the new format, it will rename your old .menu
  2293.            files to .menu.old.  You MUST run this or AdeptXBBS v1.08a5
  2294.            will not understand your menu structor!!!
  2295.  
  2296.            Run MENUCVT.CMD in your \adept\menus sub-directory.  It
  2297.            will parse all menus in the sub-directory, it can be
  2298.            run more then once it will not convert already converted
  2299.            menus.
  2300.  
  2301. This copy of Adept.EXE contains all of Gordon's Vac1 changes, plus some
  2302. major changes to the Comm Handling that should make adept more efficient
  2303. and a little more robust.  Menu execution times should be greatly improved
  2304. with this version of Adept.  Please report any bugs to tower@sound.net
  2305. or in the #Adept channel on IRC.
  2306.  
  2307. This build REQUIRES all files that are included in the archive.
  2308.  
  2309. This build doesn't change the way .PMI's are stored so no utilites should
  2310. be effected by any changes in this build.
  2311.  
  2312. This fixes numerious bugs in the Menu System, hence the rewrite.
  2313.  
  2314. Fixes the .ERX crashing bug.
  2315.  
  2316. Fixes several possible traps in the comm i/o handling.
  2317.  
  2318. I'm going to start redocumenting the Metas because it's obvious that all
  2319. are not documented.
  2320.  
  2321. {S0 - Number of Calls to The BBS
  2322. {S1 - Minimum Age Required to Access BBS
  2323. {S2 - Maximum Age Required to Access BBS
  2324. {S3 - Maximum Users Allowed in Userbase
  2325. {S4 - Maximum Password Attemps Allowed
  2326. {S5 - Maximum TImes Sysop can Be Paged
  2327. {S6 - BBS's Name
  2328. {S7 - BBS Sysop's Name
  2329. {S8 - Current Baud Rate
  2330. {S9 - AdeptXBBS Version String!
  2331.  
  2332. -END Current Readme -
  2333.  
  2334. 7/12/96 - Quick Fix, Decided NOT to change the revision number.
  2335.  
  2336. USENET Newgroups don't work correctly under Vac2 or 1.08a5.
  2337.  
  2338. This revision fixes the problem
  2339.  
  2340. 7/13/96 - Alpha Release # 6 - More changes to the menu system.
  2341.  
  2342. The menu system is basically done as far as support for all old
  2343. functionality is concerned.
  2344.  
  2345. The only support not currently finished is the security options.
  2346. Gender, Time, Credit and Port Checking is not yet implemented.
  2347.  
  2348. Support for AutoExec menus is working, I totally forgot that the new
  2349. user login used a AutoExec'd menu.  Sorry folks. :|
  2350.  
  2351. The new menu system should be at least 100% faster then the old
  2352. design.
  2353.  
  2354. Limitation that existed in the old menu system no longer exist,
  2355. nested menus, aka go-sub'd menus are no unlimited before you
  2356. where limited to 18 gosubs.  The number of menu items supported
  2357. is now unlimited.
  2358.  
  2359. I haven't had any bug reports when it comes to the menucvt.cmd
  2360. file, nice to see something works the first time around. :)
  2361.  
  2362. The current menu system is now a 100% total rewrite of the previous
  2363. design.  With this new design I plan on adding a built in menu
  2364. editor to the BBS software.  Can we say 'yah'.
  2365.  
  2366. I have changed the way the clear all gosubs command works.  In
  2367. the original menu design (and currently with this one, however
  2368. it will not be the case in a week), when a user gosubs a menu
  2369. and then returns and their configuration has changed when they
  2370. return to the previous menu, that menu is only aware of their
  2371. previous configuration.  The clear all gosubs also clears out
  2372. all previous configuration states for the user and will reset
  2373. the main menu to the new configuration.  So I recomend that on
  2374. your configuration screen instead of using the return to
  2375. previous menu option that you use the clear all gosubs and
  2376. return to the main menu, this will make sure that the new
  2377. configuration will take effect immeadiately.  Somewhere around
  2378. a7-a8 configurations will be dealt with on the fly.
  2379.  
  2380. I made some DRASTIC changes to the ansi display routiens.  We should
  2381. see roughtly a 200+% speed increase and at the same time a reduction
  2382. in system usage load when displaying a ANSI/Ascii or Avatar screen.
  2383.  
  2384. You can now DELETE users!!! The delete button works properly.  BE WARNED
  2385. the second you click on the DELETE button that user is GONE FOR GOOD!
  2386.  
  2387. There is no clicking it again to undelete the user.
  2388.  
  2389. If you mark a user for deletion while they are on-line it will
  2390. delete the user the second they log off.
  2391.  
  2392. 7/13/96 - Alpha Release #7
  2393.  
  2394. Fixed bugs that where created by the new ANSI/Ascii/Avatar display code
  2395. and even tweeked a little more speed out of it in the process.
  2396.  
  2397. Added a new /ignorecrc command line, this is a KLUDGE and will not
  2398. be in the release version (hopefully not in the next version) but
  2399. it will ignore a bad crc duurring EMSI mail sessions, this will
  2400. allow EMSI mail sessions to work again.
  2401.  
  2402. Changed menucvt.cmd it was not taking into account the menu flags
  2403. and current location options on the first line properly.  Please
  2404. copy your *.old files to *.menu and rerun the utility.  It will
  2405. fix the missing locations people have been reporting.
  2406.  
  2407. As with the Vac2 build this .exe will only run under OS/2 Warp and
  2408. Above.
  2409.  
  2410. Fixed several bugs in Cserver.exe.
  2411.  
  2412. Back to the old 'new' message area load code, the bug that caused me
  2413. to have to revert back to the old old code no longer exists and the
  2414. message areas now load properly.  Stupid typo. :|  This new code
  2415. will load message areas faster.
  2416.  
  2417. Menu prompts now display, in the last few versions you didn't get them
  2418. at all.
  2419.  
  2420. Menus are automatically recompiled by the system durring runtime if
  2421. a change has been made in the .menu file sine the last .bin build.
  2422.  
  2423. 7/14/96 - Alpha Release #8
  2424.  
  2425. There is a /ignorecrc option, this is appearently needed to make
  2426. EMSI mail session work.  When this bug is fixed it will be
  2427. mentioned in the readme.
  2428.  
  2429. Also several sysops have reported odd I/O activity with AdeptXBBS running
  2430. on COM4.  The I/O addresses for COM4 are used by some video cards, you
  2431. will find that the problem will go away if you change to a different
  2432. comm port.
  2433.  
  2434. There have been some drastic changes to the way Adept handles Opening and
  2435. Closing of the Comm Ports, I have also totally revised the way adept
  2436. handles dropped carriers.
  2437.  
  2438. 7/15/96 - Alpha Release #9
  2439.  
  2440. Fixed several bugs in the carrier handling code.
  2441.  
  2442. 7/16/96 - Alpha Release #10
  2443.  
  2444. Fixed the {PB meta, no longer displays {PB after the press any key
  2445. prompt.
  2446.  
  2447. Fixed the display of meta commands in the login.asc/ans file.
  2448.  
  2449. Fixed the No Outbound always being checked bug.
  2450.  
  2451. Fixed F3 hangup on user, it no longer traps the BBS.
  2452.  
  2453. Fixed traps when running doors.
  2454.  
  2455. Fixed the Users Online Meta.
  2456.  
  2457. The Line Status Window's Current Info now matches the Status Screens current.
  2458.  
  2459.